angular - 使用自定义 tslint 规则导致找不到实现
问题描述
我很难理解为什么我的自定义打字稿规则不起作用。下面的一些代码显示我的设置。
包.json:
{
"name": "lintingrules",
"version": "0.0.1",
"description": "Custom linting rules",
"main": "lintrules.json"
}
lintrules.json:
{
"rulesDirectory": "./rules",
"rules": {
"enounderscore": true
}
}
项目的 tslint.json 我想使用 linting 规则:
{
"extends": ["lintingrules"]
}
在我的文件夹src/rules
中,我有一个使用tsquery
. 在我的角度项目中使用它时,我总是在运行时收到以下消息ng lint
:
找不到配置中指定的以下规则的实现:enounderscore 尝试升级 TSLint 和/或确保您已安装所有必要的自定义规则。如果最近升级了 TSLint,您可能配置了需要清理的旧规则。
解决方案
所以我的错误是我没有使用 TSLint 需要的约定,而是创建了一个随机名称的文件:
重要约定:
规则标识符始终是 kebab 大小写的。规则文件始终是驼峰式大小写的 (camelCasedRule.ts)。规则文件必须包含后缀 Rule。导出的类必须始终命名为 Rule 并从 Lint.Rules.AbstractRule 扩展。
推荐阅读
- javascript - 如何制作一个像 HTML 标签一样接受值而不是从属性中获取值的 React 组件
- python - 如何为 mac 的 python 3.9 安装 pygame?
- git - 如何将共同作者添加到最新推送的 git commit?
- vue.js - Input v-checkbox 默认勾选
- reactjs - React Hooks,复制的数据不断改变原始源数据
- python - 如何拆分字符串并将所有拆分添加到一个长列中?
- linux - cgdb 向终端产生噪声输出符号
- javascript - 如何在 javascript 函数中设置 request.getSession().setAttribute(obj, obj)
- javascript - 用css和jquery在圆圈中填充颜色的关键帧
- ajax - AJAX 发布到 Razor 页面中的处理函数