小编Pat*_*eck的帖子

VS代码。如何使用默认设置打开JSON设置

当我使用首选项打开设置时:打开设置(JSON),我得到这样的屏幕:

在此处输入图片说明

但是在VSCode视频/教程中,我看到人们以某种​​方式分割了窗口,左侧为默认设置,右侧为用户/工作区设置:

在此处输入图片说明

我如何启用它?

==========================

编辑:

我找到了“ workbench.settings.openDefaultSettings”选项并将其设置为true,但我的UI仍然与上面的屏幕截图不同(我没有看到用于搜索设置的搜索框,也没有看到该消息Place your settings in the right ... to override):

在此处输入图片说明

visual-studio-code vscode-settings

7
推荐指数
3
解决办法
4849
查看次数

Typescript - 编译后获取未初始化的属性

我目前正在编写一个围绕 socket.io 的包装器。来自非常面向对象的背景,我想在我的框架/包装器中实现模型的概念。

如果您碰巧了解 socket.io,您可能知道您获取与事件关联的数据作为参数,现在我已经实现了一个自定义路由系统,其中路由的处理程序获取类似express.js 的请求中的数据目的。

这个想法是让模型类看起来像这样:

class XRequestModel
  @v.String({ message: 'The username must be a string!' })
  public userName: string;
}
Run Code Online (Sandbox Code Playgroud)

路线事件可能如下所示:

@RouteConfig({ route: '/something', model: XRequestModel })
class XEvent extends Route {
  public on(req: Request<XRequestModel>, res: Response) {
    // Handle Event
  }
}
Run Code Online (Sandbox Code Playgroud)

为了完成这里的示例,请求对象可能如下所示:

class Request<T> {
  public data: T;
}
Run Code Online (Sandbox Code Playgroud)

现在打字稿中的泛型非常有限,因为类型信息在编译后被删除,我无法使用泛型请求参数(这是模型的类型)从模型中获取元数据 - 在这种情况下,元数据是验证装饰器。为了解决这个问题,我将 Model 类引用到 RouteEvent 的 RouteConfig,该类在内部使用,允许我创建模型的实例、获取属性等等...

这里的想法是为路由处理程序提供一个带有预先验证的类型安全数据的请求对象。

阻碍我这样做的事情是,未使用的属性在通过打字稿编译后被删除,所以我无法获取模型的元数据。初始化类属性可以解决这个问题:

class XRequestModel
  @v.String({ message: 'The username must be a string!' })
  public userName: string = '';
} …
Run Code Online (Sandbox Code Playgroud)

reflection class socket.io typescript

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