小编Rom*_*nko的帖子

如何在TypeScript中键入Redux操作和Redux Reducer?

action使用typescript在redux reducer中强制转换参数的最佳方法是什么?将会出现多个动作接口,这些接口都扩展了具有属性类型的基接口.扩展操作接口可以具有更多属性,这些属性在操作接口之间都是不同的.以下是一个示例:

interface IAction {
    type: string
}

interface IActionA extends IAction {
    a: string
}

interface IActionB extends IAction {
    b: string
}

const reducer = (action: IAction) {
    switch (action.type) {
        case 'a':
            return console.info('action a: ', action.a) // property 'a' does not exists on type IAction

        case 'b':
            return console.info('action b: ', action.b) // property 'b' does not exists on type IAction         
    }
}
Run Code Online (Sandbox Code Playgroud)

问题是,action需要定投作为同时访问一个类型IActionA,并IActionB因此减速机可以同时使用action.a,并action.a不会引发错误. …

typescript redux

30
推荐指数
9
解决办法
2万
查看次数

Visual Studio代码扩展:将CSS样式注入当前主题

我想在VSCode编辑器中突出显示尾随空格。

首先,我尝试通过开发工具添加CSS样式,例如:

span .token .block .meta .leading .whitespace:last-of-type {
  background-color: red;
}

span .token .block .meta .trailing .whitespace {
  background-color: red;
}
Run Code Online (Sandbox Code Playgroud)

它的行为完全符合我需要的行为。

我的下一步是将其打包为扩展。我不想创建一个新主题,也不想使一个简单的解决方案变得更加复杂。

但是目前我只能看到两种更改编辑器样式的方法:

两种解决方案都不允许我仅在VSCode编辑器样式集中添加六行CSS。

问题是:

  • 我是否错过了将自己的CSS样式添加到VSCode中的现有样式的选项?
  • 如果这是不可能的(我可以理解为什么将其封装),那么在VS Code扩展中突出显示尾随空格的正确方法是什么?

visual-studio-code vscode-extensions

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

MongoDB:将 $sample 与 C# 驱动程序一起使用

我尝试使用 MongoDB C# 驱动程序 (2.4.4) 表达以下查询:

db.media.aggregate({ $sample: { size: 1 }})
Run Code Online (Sandbox Code Playgroud)

这是我到目前为止所拥有的:

BsonDocument sample = new BsonDocument
{
    { "$sample", new BsonDocument { { "size", 1 } } }
};
MongoBlob mongoBlob = await _collection
    .Aggregate()
    .Group<MongoBlob>(sample)
    .FirstOrDefaultAsync();
Run Code Online (Sandbox Code Playgroud)

我不能把sampleto放进.Aggregate(AggregateOptions options = null)去,把它放进去.Group(...)显然是错误的。也没有类似的.Sample()方法。

请帮忙。先感谢您。

mongodb mongodb-.net-driver

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