javascript - 角度 8 条路径
问题描述
我有一个使用 Angular 8 的项目,我尝试在我的
src/app/helpers/auth.guard.ts
import { AuthenticationService } from '@app/services';
我的 AuthenticationService ts 文件有一个路径
src/app/services/authentication.service.ts
当我运行 ng serve 我得到错误
ERROR in src/app/helpers/auth.guard.ts(4,39): error TS2307: Cannot find module '@app/services'.
这是我的 tsconfig.js
{
"compileOnSave": false,
"compilerOptions": {
"baseUrl": "./",
"outDir": "./dist/out-tsc",
"sourceMap": true,
"declaration": false,
"downlevelIteration": true,
"experimentalDecorators": true,
"module": "esnext",
"moduleResolution": "node",
"importHelpers": true,
"target": "es2015",
"typeRoots": [
"node_modules/@types"
],
"lib": [
"es2018",
"dom"
],
"paths": {
"@app/*": ["src/app/*"],
"@environments/*": ["src/environments/*"]
}
},
"angularCompilerOptions": {
"fullTemplateTypeCheck": true,
"strictInjectionParameters": true
}
}
这是我的 tsconfig.app.json
{
"extends": "./tsconfig.json",
"compilerOptions": {
"outDir": "./out-tsc/app",
"types": []
},
"files": [
"src/main.ts",
"src/polyfills.ts"
],
"include": [
"src/**/*.ts"
],
"exclude": [
"src/test.ts",
"src/**/*.spec.ts"
]
}
我尝试使用 --aot 运行项目,但这不起作用
解决方案
以下是可能出错的地方:
您的身份验证服务位于以下路径:
src/app/services/authentication.service.ts
但是当您尝试使用: 导入它时import { AuthenticationService } from '@app/services'
,它会尝试从services
目录导入服务。您的service
目录不导出身份验证服务,因此您收到此错误。
以下是您可以解决的方法:
- 创建一个名为
index.ts
inservices
directory 的文件,使其位于 path:src/app/services/index.ts
。 - 在此
index.ts
文件中,添加以下导出语句:
export * from './authentication.service.ts';
这将从services
文件夹中导出您的服务,因此您的导入语句将能够在src/app/services/
.
由于您的 tsconfig 中已经有路径别名,因此"@app/*": ["src/app/*"]
您的 import 语句应该正确解析。
让我知道它是否不起作用。
推荐阅读
- c - 是否可以使用 fgets 将用户输入从一行存储到 2 个数组中?
- r - 在列表中的变量循环中使用自定义 ggplot 函数
- groovy - 如果前一阶段条件为真,则取消 Jenkins 中的剩余阶段
- jenkins - 如何从 Jenkinsfile 步骤中删除脚本中的脚本
- json - 转换响应实体
到列表 [科特林] - flutter - 任何人都知道我是否可以通过 Flutter Web 以某种方式提供 json 文件?
- javascript - 无法读取 this.sidenav.toggle() 中未定义的属性“切换”;
- data-structures - 如何存储链接切割树?
- c# - 性能不佳的后台服务从队列中出列
- zephyr-rtos - 如何在 zephyr-rtos 项目中添加应用程序单元测试