小编N. *_*sev的帖子

在Kotlin中复制地图最聪明的方法是什么?

我想获得一些具有相同内容的Map的新实例,但Map没有内置copy方法.我可以这样做:

val newInst = someMap.map { it.toPair() }.toMap()
Run Code Online (Sandbox Code Playgroud)

但它看起来相当难看.还有更聪明的方法吗?

kotlin

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

通过编写添加新类的自定义指令来更改"router-link-active"类的默认名称

我想在我的Angular2应用程序中使用Semantic UI.问题是我找不到更改默认名称"router-link-active"类的路由器设置.我需要它被称为"活动"才能使菜单正确显示.

据我了解,这种设置不存在.我在Vue.JS中看过它,所以我希望它也在那里.请求开发人员解决这个问题是个好主意吗?

所以.我们需要编写一个自定义指令,将"active"类添加到具有"router-link-active"类的所有DOM元素,但我也遇到了一些问题.

有一个类似的问题,但答案太复杂,不适合我.所以我读了一些文档,决定做更好的事情:

commons.ts:

@Directive({
    selector: '.router-link-active',
    host: {'[class.active]': 'trueConst'} //just 'true' could also work I think...
})
export class ActiveRouterLinkClass {
    trueConst: boolean = true; //...if 'true' works we don't need this
}
Run Code Online (Sandbox Code Playgroud)

然后我将ActiveRouterLinkClass导入到我的main.component.ts并将其添加到组件的指令列表中.不幸的是,现在我有这个错误:"EXCEPTION:组件'Main'视图上的意外指令值'undefined'".请解释我做错了什么!

router directive typescript angular

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

当Kotlin频道变满时执行一段代码

我想编写一个简单的批处理程序类。它有一个请求队列,等待该队列变满或要经过一段时间,然后才与数据库对话。

通过通道实现此队列非常方便-这样我们的客户端将在队列满时将其挂起。但是,如何确定频道是否已满?

当然,我可以创建一个方法,该方法将某些内容发送到通道,然后执行一些检查。下一步是将其封装在从Channel派生的类中。还是很脏(目前尚不清楚如何处理onSend/ onReceive)。还有更优雅的甜味剂吗?也许开箱即用?

channel kotlin kotlin-coroutines

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