Angular 2您是否可以从项目根目录导入某些内容,而不必使用/
我发现我正在慢慢地挖掘自己的坟墓,因为我的文件夹结构越深,每次需要从根组件导入模块时,我必须返回的越远:Angular 2您是否可以从项目根目录导入某些内容,而不必使用/,angular,typescript,import,Angular,Typescript,Import,我发现我正在慢慢地挖掘自己的坟墓,因为我的文件夹结构越深,每次需要从根组件导入模块时,我必须返回的越远: import {ComponentsModule, SharedModule} from '../../../../../../shared'; 由于该视图也有子视图,因此它将变得更长 我看了一下,这表明,这是不可能的角度2到现在为止。然而,对我来说,似乎很奇怪,没有一种方法可以实现这样的目标: import {ComponentsModule, SharedModule} from 's
import {ComponentsModule, SharedModule} from '../../../../../../shared';
由于该视图也有子视图,因此它将变得更长
我看了一下,这表明,这是不可能的角度2到现在为止。然而,对我来说,似乎很奇怪,没有一种方法可以实现这样的目标:
import {ComponentsModule, SharedModule} from 'src/app/shared';
这是将来会出现的功能,还是已经有了可能
编辑:根据@Sasxa的建议,我这样做了:
{
"compilerOptions": {
"baseUrl": ".",
"paths": {
"*": [
"*"
]
},
"declaration": false,
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"lib": ["es6", "dom"],
"mapRoot": "./",
"module": "es6",
"moduleResolution": "node",
"outDir": "../dist/out-tsc",
"sourceMap": true,
"target": "es5",
"typeRoots": [
"../node_modules/@types"
]
}
}
但现在,当我尝试启动Angular CLI时,我遇到了一大堆错误,主要是:输入模块中的错误未找到:错误:解析中的递归
和多主模块中的错误未找到:错误:解析中的递归
缺少什么吗?这似乎可以通过
tsconfig.json
中的路径和baseUrl
编译器选项来完成
以下是文档中的一个示例:
{
"compilerOptions": {
"baseUrl": ".",
"paths": {
"*": [
"*",
"generated/*"
]
}
}
}
这会告诉与模式“*”(即所有值)匹配的任何模块导入的编译器在两个位置查找:
- “*”:表示相同的名称不变,因此map=>\
- “generated*”表示附加前缀为“generated”的模块名称,因此map=>\generated\
应在TypeScript 1.9中提供+
更新:
我刚刚尝试过:添加“baseUrl”:“
允许我从“app/shared”
中的任何位置导入{…}(我的tsconfig.json
在src\
文件夹中)。编译时不会出现任何错误,并可使用Angular CLI 这似乎可以通过tsconfig.json
中的path
和baseUrl
编译器选项来实现
以下是文档中的一个示例:
{
"compilerOptions": {
"baseUrl": ".",
"paths": {
"*": [
"*",
"generated/*"
]
}
}
}
这会告诉与模式“*”(即所有值)匹配的任何模块导入的编译器在两个位置查找:
- “*”:表示相同的名称不变,因此map=>\
- “generated*”表示附加前缀为“generated”的模块名称,因此map=>\generated\
应在TypeScript 1.9中提供+
更新:
我刚刚尝试过:添加“baseUrl”:“
允许我从“app/shared”
中的任何位置导入{…}(我的tsconfig.json
在src\
文件夹中)。编译时不会出现任何错误,并可使用Angular CLI 几个月前我一直在研究这个问题,通过制作输出内容的节点模块(有点像从“@angular”导入内容),这是可能的。我发现了这个:,并且在tsconfig
中添加了一些选项。我也必须研究一下(;几个月前我一直在研究这个问题,通过制作节点模块来导出内容(有点像从“@angular”导入)。我发现了这个:,并且在tsconfig
中添加了一些选项。我也必须研究一下(;是的,我只是在一个文件中更改了它,其余的仍然是。/../../
尝试没有路径,我只是使用了baseUrl
。啊,生病的兄弟。这会帮我很多忙!希望我能投票给你x100:DYea,我只是在一个文件中更改了它,其余的仍然是。/../../
尝试没有路径,我只是使用了baseUrl
。啊,生病的br>o、 这对我有很大帮助!希望我能投票给你x100:D