Ric*_*cka 7 compiler-options typescript ecmascript-6 visual-studio-2015 angular
我正在使用Visual Studio 2015中的gulp进行角度4项目.我Visual Studio 2015 QuickStart
从这里得到了它.
我的项目结构:
src
???angular
???common
???models
???items.ts
???ui
???components
???items.component.ts
Run Code Online (Sandbox Code Playgroud)
items.ts
export module items {
export const listOfItems = [1,2,3];
}
Run Code Online (Sandbox Code Playgroud)
我想在导入src文件夹中的所有内容时使用非相对路径,即:
items.component.ts
import { items } from 'items';
Run Code Online (Sandbox Code Playgroud)
这是我的tsconfig.json
文件(与...相同src
):
{
"compileOnSave": false,
"compilerOptions": {
"target": "es5",
"module": "commonjs",
"moduleResolution": "node",
"sourceMap": true,
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"lib": [ "es2015", "dom" ],
"noImplicitAny": true,
"suppressImplicitAnyIndexErrors": true,
"typeRoots": [
"node_modules/@types/"
]
}
}
Run Code Online (Sandbox Code Playgroud)
在这里,我尝试将其添加到compilerOptions
:
"baseUrl": "." //it doesn't help.
Run Code Online (Sandbox Code Playgroud)
之后:
"baseUrl": ".",
"paths": {
"*": [
"*",
"src/angular/*" // still nothing.
]
}
Run Code Online (Sandbox Code Playgroud)
我也补充说rootDirs
但是我仍然收到这个错误:
Can't find module 'items'
Run Code Online (Sandbox Code Playgroud)
首先,请确保您已安装VisualScript for Visual Studio 2015 - v2.5.2,之后:
tsconfig.json:
{
"compileOnSave": false,
"compilerOptions": {
"baseUrl": "./src",
"paths": {
"@models/*": [ "angular/common/models/*" ]
}
//..
}
}
Run Code Online (Sandbox Code Playgroud)
用法:
import { items } from '@models/items';
Run Code Online (Sandbox Code Playgroud)
那么,这里发生了什么:
*
是指向我们的文件的实际名称,所以在我们的情况下,后@models
有*
其指向items
,并且items
是里面的某个地方angular/common/models/*
.
此外,我们应该添加它,systemjs.config.js
以便可以解决路径:
System.config({
paths: {
// paths serve as alias
'npm:': 'node_modules/',
"@models/*": ["rootDist/angular/common/models/*"]
^
where you keep your files, for example dist/
}
// other things..
});
Run Code Online (Sandbox Code Playgroud)
另一个重要的事情是重新启动视觉工作室
我也试过卸载/重新加载项目,但这没有用.
归档时间: |
|
查看次数: |
754 次 |
最近记录: |