小编Sup*_*Man的帖子

Kotlin 协程 - 异步等待

在他关于 Kotlin 中的结构化并发的文章 ( https://medium.com/@elizarov/structured-concurrency-722d765aa952 ) 中,Roman Elizarov 通过给出以下示例来解释并行分解:

coroutineScope { 
    val deferred1 = async { loadImage(name1) }
    val deferred2 = async { loadImage(name2) }
    combineImages(deferred1.await(), deferred2.await())
}
Run Code Online (Sandbox Code Playgroud)

显然,这段代码是不言自明的。但是,如果我们改为这样写,我们会得到相同的结果吗

coroutineScope { 
    val result1 = async { loadImage(name1) }.await()
    val result2 = async { loadImage(name2) }.await()
    combineImages(result1, result2)
}
Run Code Online (Sandbox Code Playgroud)

意思是,两个异步仍然并行运行还是第二个异步调用永远不会运行,直到 result1 可用?

android kotlin kotlin-coroutines

3
推荐指数
1
解决办法
2038
查看次数

访问Nexus Config-Ext.JSON.decode():您正在尝试解码无效的JSON字符串:

使用Sonatype Nexus,我只有在访问时才收到此错误消息/nexus/#admin/support/status

Ext.JSON.decode():您正尝试解码无效的JSON字符串:Nexus存储库管理器(新映像).src =“ http://localhost/nexus/static/rapture/resources/favicon.ico?_v = 3.17.0-01&_e = OSS“ </ script>函数progressMessage(msg){if(console && console.log){console.log(msg); } document.getElementById('loading-msg')。innerHTML = msg; }正在加载... progressMessage('正在加载baseapp-prod.js'); progressMessage('正在加载extdirect-prod.js'); progressMessage('Loading bootstrap.js'); progressMessage('正在加载d3.v4.min.js'); progressMessage('正在加载nexus-rapture-prod.js'); progressMessage('正在加载nexus-blobstore-s3-prod.js'); progressMessage('正在加载nexus-rutauth-plugin-prod.js'); progressMessage(' 加载nexus-coreui-plugin-prod.js'); progressMessage('正在加载nexus-proui-plugin-prod.js'); progressMessage('正在加载nexus-repository-pypi-prod.js'); progressMessage('正在加载nexus-repository-maven-prod.js'); progressMessage('正在加载nexus-repository-npm-prod.js'); progressMessage('正在加载nexus-onboarding-plugin-prod.js'); progressMessage('正在加载nexus-repository-nuget-prod.js'); progressMessage('正在加载nexus-repository-rubygems-prod.js'); progressMessage('正在加载nexus-repository-docker-prod.js'); progressMessage('正在加载app.js'); progressMessage('正在初始化...'); 加载nexus-repository-maven-prod.js'); progressMessage('正在加载nexus-repository-npm-prod.js'); progressMessage('正在加载nexus-onboarding-plugin-prod.js'); progressMessage('正在加载nexus-repository-nuget-prod.js'); progressMessage('正在加载nexus-repository-rubygems-prod.js'); progressMessage('正在加载nexus-repository-docker-prod.js'); progressMessage('正在加载app.js'); progressMessage('正在初始化...'); 加载nexus-repository-maven-prod.js'); progressMessage('正在加载nexus-repository-npm-prod.js'); progressMessage('正在加载nexus-onboarding-plugin-prod.js'); progressMessage('正在加载nexus-repository-nuget-prod.js'); progressMessage('正在加载nexus-repository-rubygems-prod.js'); progressMessage('正在加载nexus-repository-docker-prod.js'); progressMessage('正在加载app.js'); progressMessage('正在初始化...'); 加载nexus-repository-docker-prod.js'); progressMessage('正在加载app.js'); progressMessage('正在初始化...'); 加载nexus-repository-docker-prod.js'); progressMessage('正在加载app.js'); progressMessage('正在初始化...');

我正在使用反向代理(nginx)分配用于授权的RUT标头,如下所示:

server { 
    listen 80; server_name localhost;

    location /auth { 
        proxy_set_header Host $host; 
        proxy_pass_request_body off; 
        proxy_set_header Content-Length ""; …
Run Code Online (Sandbox Code Playgroud)

extjs nexus

2
推荐指数
2
解决办法
436
查看次数

将javascript对象修改为特定格式

let data = {
    "rec": [{
            "id": "25837",
            "contentId": "25838"
        },
        {
            "id": "25839",
            "contentId": "25838"
        },
        {
            "id": "25838"
        },
        {
            "id": "25636",
            "contentId": "25837"
        }, {
            "id": "25640",
            "contentId": "25839"
        }
    ]
};
Run Code Online (Sandbox Code Playgroud)

我有一个 javascript 对象,我必须将其操作为以下格式。

{
    "childern": [{
        "id": "25838",
        "childern": [{
                "id": "25837",
                "contentId": "25838",
                "childern": [{
                    "id": "25636",
                    "contentId": "25837"
                }]
            },
            {
                "id": "25839",
                "contentId": "25838",
                "childern": [{
                    "id": "25640",
                    "contentId": "25839"
                }]
            }
        ]
    }]
}
Run Code Online (Sandbox Code Playgroud)

如果任何对象没有contentId它应该在父级别。那么所有contentId与父 ID 相同的对象都应该在它的子级别,依此类推。 …

javascript

2
推荐指数
1
解决办法
76
查看次数

Kotlin班级代表团,将其传递给代表团

this在Kotlin授课时有通过的可能性吗?

class SomeFlow : Flow, SmsAuthentication by DefaultSmsAuthentication(this)
Run Code Online (Sandbox Code Playgroud)

它说this在这种情况下不存在。另一个类如下所示:

class DefaultSmsAuthentication(val flow: Flow) : SmsAuthentication
Run Code Online (Sandbox Code Playgroud)

delegation kotlin

1
推荐指数
1
解决办法
348
查看次数

如何使用 React Js 从 ApexCharts 获取 URI

我正在尝试使用 Data URI 方法获取图表 URI。我见过很多使用 Apexchart Js从 ApexChart获取 pdf 的示例,当尝试在 React 上重现它时,我得到了 TypeError: Cannot read property 'type' of undefined

这是我的组件安装看起来像这样:

componentDidMount() {

console.log(this.state.loading);
if (this.state.loading === false) {
  const {options} = this.state;
  const node = ReactDOM.findDOMNode(this);
  if (node instanceof HTMLElement) {
    var chart = new ApexCharts(node.querySelector('.charty'), options);
    chart.render().then(() => {
      setTimeout(function() {
        chart.dataURI().then(uri => {
          console.log(uri);
        });
      }, 4000);
    });
  }
} else {
  return;
}
}
Run Code Online (Sandbox Code Playgroud)

类型也在我的状态和渲染中定义,如下所示:

    <div className='rfe'>
      <div className='rfea'>
        From {this.state.AxisMonth[0]} to{' '}
        {this.state.AxisMonth[this.state.AxisMonth.length - …
Run Code Online (Sandbox Code Playgroud)

javascript charts reactjs react-router apexcharts

1
推荐指数
1
解决办法
2307
查看次数

Kotlin - 清理循环/索引

我一直在写这样的代码:

index = 0 
while (index < 10){
    // do something
    index ++
}
Run Code Online (Sandbox Code Playgroud)

我想让这个更干净,有一些类似的东西

while(var index = 0; index < 10; index ++)
{
        // do something
        index ++
}
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?

loops kotlin

0
推荐指数
1
解决办法
70
查看次数

无法在 Kotlin 中创建 Observable

我正在尝试在 kotlin 中创建 Observable 。但是它在 OnSubscribe 方法上给出了错误未解决的引用

  fun getDisposableObserver(): Observable<Background> {

        return Observable.create(object :Observable.OnSubscribe<Background> ->{})
    }
Run Code Online (Sandbox Code Playgroud)

我试过这个片段。它也不起作用

  Observable.create(object : ObservableOn.OnSubscribe<Int> {
            override fun call(subscriber: Subscriber<in Int>) {
                for(i in 1 .. 5)
                    subscriber.onNext(i)

                subscriber.onCompleted()
            }
        })
Run Code Online (Sandbox Code Playgroud)

我做错了什么?,如何创建 Observable?

android kotlin rx-android rx-java2

0
推荐指数
1
解决办法
852
查看次数

如何让deleteSheet适用于复杂的工作表名称

我有一个 Google 插件,可以管理 Google 电子表格中的几张工作表。它所做的事情之一是根据日期删除工作表,日期是它删除的工作表的名称。在我当前的开发阶段,我还添加了删除包含日期和其他术语的工作表的功能"script 6/5/2019",例如。

我使用与以日期命名的工作表相同的代码并对其进行了一些调整,但在删除工作表时它会返回错误:"Cannot find method deleteSheet(string)"

 if(sRemove==true) {
  SpreadsheetApp.getActiveSpreadsheet().toast('Finding Old Scripts', 'Status',3);
    for (var i = ss.getNumSheets()-1; i >= 0; i--) {
    
        var thisTab = ss.getSheets()[i].getName();
        if(thisTab.substr(0,6) =="script") {
        Logger.log(i+" "+thisTab+" is a script");
        var tabDate = new Date(thisTab.substr(8)); 
        //8 is the first digit of the date
        Logger.log(tabDate);
        var thisDate = new Date(todayDate);
  
        var patt = new RegExp("s");
        var res = patt.test(thisTab);
        Logger.log(i+" "+res);

        if(tabDate<thisDate && res==true) { 
           var ss = SpreadsheetApp.getActiveSpreadsheet();
           //ss.setActiveSheet(ss.getSheetByName(thisTab)); …
Run Code Online (Sandbox Code Playgroud)

google-sheets google-apps-script

0
推荐指数
1
解决办法
566
查看次数