小编Hav*_*uit的帖子

如何在Visual Studio 2017中关闭解决方案后禁用起始页

在Visual Studio 2017中,您可以选择"工具">"选项">"环境">"启动">"启动时:显示空白环境".这可以防止在启动Visual Studio时显示"起始页",而在以前的版本中,它会阻止在关闭解决方案时显示"起始页".

但是,在Visual Studio 2017中,设计人员似乎选择在关闭解决方案后显示"起始页",即使该选项适用于启动时的空白环境.

在Visual Studio团队决定提供合理选项之前,是否有任何创造性的方法可以解决这个问题?

start-page visual-studio-2017

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

Visual Studio Diff窗口:如何编辑.sql文件

使用Visual Studio时,选择对.sql文件的挂起更改.选择"与最新比较"或"与工作区版本比较".该文件在Diff窗口中打开.

有没有办法在Diff窗口中编辑.sql文件?比较其他文件类型时,此功能可用.

sql diff visual-studio

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

将 Swagger UI 添加到 Angular 应用程序

有没有什么好方法可以将Swagger UI添加到 Angular 应用程序中而不会陷入太多杂草?

我想添加对托管在不同站点上的 API 的引用,因此我需要的只是用于引用文档的 UI 元素。

我找到了一个名为Swangular-Components的包,但它似乎弄乱了我的 index.d.ts 文件。我认为,对于我的情况,这样的解决方案是最简单的。

swagger-ui angular

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

在 monorepo 中设置 eslint-import-resolver-typescript

我正在尝试将路径映射添加到 monorepo。我已经有了eslint-plugin-import规则,并且在所有映射的导入上收到错误“无法解析模块的路径”。

\n
app/\n\xe2\x94\x9c\xe2\x94\x80 package/\n\xe2\x94\x82  \xe2\x94\x9c\xe2\x94\x80 src/\n\xe2\x94\x82  \xe2\x94\x9c\xe2\x94\x80 tsconfig.json\n.eslintrc\ntsconfig.json\n
Run Code Online (Sandbox Code Playgroud)\n

.eslintrc 看起来像

\n
app/\n\xe2\x94\x9c\xe2\x94\x80 package/\n\xe2\x94\x82  \xe2\x94\x9c\xe2\x94\x80 src/\n\xe2\x94\x82  \xe2\x94\x9c\xe2\x94\x80 tsconfig.json\n.eslintrc\ntsconfig.json\n
Run Code Online (Sandbox Code Playgroud)\n

内部 tsconfig.json 如下所示:

\n
{\n  "parser": "@typescript-eslint/parser",\n  "plugins": [\n    "@typescript-eslint",\n    "import",\n  ],\n  "extends": [\n    "eslint:recommended",\n    "plugin:import/recommended",\n    "plugin:import/typescript"\n  ],\n  "settings": {\n    "import/resolver": {\n      "typescript": {}\n    }\n  }\n}\n
Run Code Online (Sandbox Code Playgroud)\n

路径映射得很好,但我有 lint 错误“无论我尝试使用映射的路径,都无法解析模块 \'context\' 的路径。

\n

研究表明我需要使用eslint-import-resolver-typescript包,但它并没有使错误消失。

\n

typescript eslint

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

从 Angular 模块导出 Typescript 接口

我有一个IBreadcrumbNavigation要导出的 Typescript 界面。我可以在 Angular 组件中使用它import { IBreadcrumbNavigation } from 'app/shared/interfaces/breadcrumbNavigation';

但是,该组件的模块已经导入了一个SharedModule. 我想将IBreadcrumbNavigation接口放入其中SharedModule,这样我就不需要将其显式导入到每个想要使用它的组件中。

在我的SharedModule我有

import { IBreadcrumbNavigation } from './interfaces/breadcrumbNavigation';

@NgModule({
    declarations: [
        IBreadcrumbNavigation
    ],
    exports: [
        IBreadcrumbNavigation
    ]
})
export class SharedModule { };
Run Code Online (Sandbox Code Playgroud)

TypeScript 给出错误“‘IBreadcrumbNavigation’仅引用类型,但在此处用作值。”

如果我IBreadcrumbNavigation从接口更改为类,错误就会消失。

有没有一个好的解决方案,或者我只需要将接口直接显式导入到每个组件中?

typescript angular

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

如何读取 Serilog 上下文中的属性

我正在使用 Serilog 记录器,我已经用.Enrich.FromLogContext().

我在整个应用程序中向上下文添加了各种属性。我希望能够读取当前上下文中的属性。我可以用来LogContext.PushProperty()向上下文添加属性,但我还没有找到任何好的方法来公开已添加的方法。

解决这个问题的一种方法是在记录器上创建一个过滤器并检查LogEvent.Properties,然后根据我发现的内容设置一些外部变量。但这有几个缺点。它会在每次记录消息时添加此检查,从而减慢速度。这根本不是过滤器的意图。而且我不确定这是否是线程安全的,因此不同的上下文可以同时更新外部变量。

serilog

5
推荐指数
0
解决办法
1461
查看次数

Azure Data Lake Store是否有本地模拟器

开发Azure存储帐户时,我可以运行Microsoft Storage Emulator在本地保留Blob,队列和表,而不必在线连接到Azure。

Azure Data Lake Store是否有等效的产品?在本地进行一段时间的开发而不必在线连接到Azure会很好。

azure-data-lake

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

防止模块外部导入,除非通过索引

是否有一个简单的解决方案(也许是 lint 规则?)可以帮助通过索引文件强制执行干净的代码导入?我想阻止从“表兄弟”文件导入代码,除非它是通过索引文件提供的。

前任:

- app
  + dogs
  | + index.ts  
  | + breeds
  | |  + retriever.ts
  | |  + schnauzer.ts
  | + activities
  |    + playing.ts
  |    + walking.ts
  + cats
    + index.ts
    + breeds
    |  + siamese.ts
    |  + persion.ts
    + activities
       + sleeping.ts
       + hunting.ts  
Run Code Online (Sandbox Code Playgroud)

从以下角度导入cats/activities/hunting.ts

import { sleeping } from './sleeping'       // VALID - inside same folder
import { siamese } from '../breeds/siamese' // VALID - inside cats module
import { playing } …
Run Code Online (Sandbox Code Playgroud)

import typescript

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

eslint-plugin-testing-library 未捕获 lint 错误

我正在尝试添加eslint-plugin-testing library到项目中以捕获@testing-library/react测试中的常见错误。我已按照说明步骤操作,但无法让它捕获测试文件中的错误。

例如,我手动打开no-debug规则,在 .test.tsx 文件中添加一条debug()语句,然后运行 ​​linter。它不会发现文件中的任何错误。

如果我违反了其他插件的规则,它们就会被捕获,所以我怀疑我将测试库插件添加到配置中的方式可能有问题。

包.json

{
  "dependencies": {
    "react": "16.12.0",
    "react-dom": "16.12.0"
  },
  "devDependencies": {
    "@babel/core": "7.7.0",
    "@babel/preset-react": "7.0.0",
    "@babel/preset-typescript": "7.1.0",
    "@testing-library/react": "9.1.3",
    "@typescript-eslint/eslint-plugin": "2.15.0",
    "@typescript-eslint/parser": "2.15.0",
    "eslint": "6.8.0",
    "eslint-plugin-cypress": "2.10.3",
    "eslint-plugin-jsx-a11y": "6.2.3",
    "eslint-plugin-react": "7.19.0",
    "eslint-plugin-react-hooks": "2.3.0",
    "eslint-plugin-testing-library": "3.0.0",
    "typescript": "3.7.3"
  }
}
Run Code Online (Sandbox Code Playgroud)

.eslintrc

{
  "parser": "@typescript-eslint/parser",
  "parserOptions": {
    "ecmaVersion": 6,
    "sourceType": "module",
    "ecmaFeatures": {
      "modules": true
    }
  },
  "env": {
    "browser": true,
    "es6": true,
    "jasmine": true, …
Run Code Online (Sandbox Code Playgroud)

eslint eslintrc testing-library

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

TypeScript 中的递归泛型

我想声明一个简单的类型来替换any一段代码。我知道这将是一些对象式的论证,所以我可以使用Record<string, unknown>,但我宁愿更具体一点

这将是理想的:

type MyObject = Record<string, string | string[] | number | boolean | MyObject>
Run Code Online (Sandbox Code Playgroud)

但它给出了错误

类型别名“MyObject”循环引用自身.ts(2456)

我可以通过接口作弊来解决这个问题:

type MyObject<T> = Record<string, string | string[] | number | boolean | T>

// eslint-disable-next-line @typescript-eslint/no-empty-interface
interface IMyObject extends MyObject<IMyObject>{}
Run Code Online (Sandbox Code Playgroud)

有没有办法做我想做的事,或者我应该坚持下去Record<string, unknown>

generics typescript recursive-type

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

在react-testing-library中测试组件之前有没有办法初始化多个原子状态?

现在我正在初始化一个原子状态如下

<RecoilRoot initializeState={(snap: any): any => snap.set( oneTimeData, onetimeParameter)}>
Run Code Online (Sandbox Code Playgroud)

我试图errors在上面的代码中添加另一个原子。

<RecoilRoot initializeState={(snap: any): any => snap.set( (oneTimeData, onetimeParameter), (errors, errorsParameter) }>
Run Code Online (Sandbox Code Playgroud)

这是正确的用法吗?

reactjs recoiljs

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