tslint rxjs-tslint-rules 在编译的程序中找不到'/users/whisher/projects/my/src/rxjs-imports.ts'。是进口的吗?
Posted
技术标签:
【中文标题】tslint rxjs-tslint-rules 在编译的程序中找不到\'/users/whisher/projects/my/src/rxjs-imports.ts\'。是进口的吗?【英文标题】:tslint rxjs-tslint-rules Cannot find '/users/whisher/projects/my/src/rxjs-imports.ts' in the compiled program. Has it been imported?tslint rxjs-tslint-rules 在编译的程序中找不到'/users/whisher/projects/my/src/rxjs-imports.ts'。是进口的吗? 【发布时间】:2018-04-04 10:35:49 【问题描述】:我已经添加了这个 linter rxjs-tslint-rules 像我的 tslint.json 一样
"extends": [
"rxjs-tslint-rules"
],
"rules":
"rxjs-add":
"options": [
"allowElsewhere": false,
"allowUnused": false,
"file": "./src/rxjs-imports.ts"
],
"severity": "error"
,
当然我已经在 src 文件夹中添加了 rxjs-imports.ts 文件
import 'rxjs/add/operator/map';
比在我的 main.ts 中
import './rxjs-imports';
但我明白了
在编译的程序中找不到“/users/whisher/projects/my/src/rxjs-imports.ts”。导入了吗?
我该如何解决?
还是一个错误?
更新
我刚刚看到了全新的 5.5 版本 有可出租的运算符,所以 rxjs-imports 文件 现在完全没用了。
https://github.com/ReactiveX/rxjs/blob/master/doc/lettable-operators.md
【问题讨论】:
GitHub 中有一些相关的 (now closed) 问题。很可能是配置问题。确保您已阅读自述文件中的 Angular 陷阱。现在在 repo 中有一个工作的 Angular CLI 示例。 我没有找到任何例子:(你能链接我吗? here 和 README 包含指向 lint 配置提交前和后提交的链接,以便配置更改一目了然。 我刚刚看到jsut现在5.5版本有lettable操作符所以rxjs-imports文件没什么用但是感谢帮助。 @Whisher 仍然建议使用 rxjs-imports 文件来减少 Angular 项目中的包大小。来自官方 rxjs 文档:“现在可以从rxjs/operators
导入管道操作符,但是这样做而不更改构建过程通常会导致更大的应用程序包。这是因为默认情况下 rxjs/operators
将解析为 CommonJS 输出rxjs。” (来源:github.com/ReactiveX/rxjs/blob/master/doc/…)(官方错误报告:github.com/angular/angular-cli/issues/9069)
【参考方案1】:
添加
"files": [
"../src/rxjs-imports.ts"
]
到tsconfig.e2e.json
为我修好了。
完整配置如下:
"extends": "../tsconfig.json",
"compilerOptions":
"outDir": "../dist/out-tsc/e2e",
"baseUrl": "./",
"module": "commonjs",
"target": "es5",
"types": [
"jasmine",
"jasminewd2",
"node"
]
,
"files": [
"../src/rxjs-imports.ts"
]
而tsconfig.json
是:
"compileOnSave": false,
"compilerOptions":
"outDir": "./dist/out-tsc",
"sourceMap": true,
"declaration": false,
"moduleResolution": "node",
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"target": "es5",
"typeRoots": [
"node_modules/@types"
],
"lib": [
"es2016",
"dom"
]
【讨论】:
以上是关于tslint rxjs-tslint-rules 在编译的程序中找不到'/users/whisher/projects/my/src/rxjs-imports.ts'。是进口的吗?的主要内容,如果未能解决你的问题,请参考以下文章
tslint 更新错误“找不到模块 'tslint/lib/lint'”
“TSLint 仍然存在” => 从 TSlint 升级到 ESLint