如何在Visual Studio 2015中从非相对路径导入模块

我正在Visual Studio 2015中使用gulp进行angular 4项目。我Visual Studio 2015 QuickStart这里得到的

  • tsc版本:2.5.2

我的项目结构:

src
└──angular
     └──common
           └──models
                └──items.ts
     └──ui
         └──components
                └──items.component.ts

items.ts

export module items {
  export const listOfItems = [1,2,3];
}

导入src文件夹中的所有内容时,我想使用非相对路径,即:

items.component.ts

import { items } from 'items';

这是我的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/"
    ]
  }
}

我尝试将其添加到compilerOptions

"baseUrl": "." //it doesn't help.

之后:

"baseUrl": ".",
    "paths": {
      "*": [
        "*",
        "src/angular/*" // still nothing.
      ]
}

我也添加了,rootDirs但仍然出现此错误:

Can't find module 'items'
托塔

首先,请确保已安装Visual Studio 2015的TypeScript-v2.5.2,之后:

tsconfig.json:

{
  "compileOnSave": false,
  "compilerOptions": {
    "baseUrl": "./src",
     "paths": {
     "@models/*": [ "angular/common/models/*" ]
     }
    //..
  }
}

用法:

import { items } from '@models/items';

所以,这里发生了什么:

*是指向我们的文件的实际名称,所以在我们的情况下,后@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..
  });

另一个重要的事情是重新启动Visual Studio

我也尝试过卸载/重新加载项目,但这无济于事。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在python中解析相对路径?

如何在golang中解析相对路径到绝对路径?

如何在Java中获取exe的相对路径

如何避免在Angular 2中使用相对路径较长的导入?

如何在Visual Studio中获取文件的相对路径?

如何强制Android Studio使用相对路径?

Android Studio:如何使用相对路径添加项目?

如何在Visual Studio中包括OpenSSL

我如何告诉Visual Studio代码有关相对路径

Visual Studio c#相对路径,即使找到正确的路径,程序也会搜索两个路径

如何在相对路径中包含bash脚本?

如何从具有相对路径的包中的模块内部打开文件?

如何通过相对路径使用XCOPY Visual Studio发布后命令

如何正确导入单元测试的相对路径

如何在Visual Studio中使用python设置相对路径?

如何合并从相对路径导入的类型?

如何在Java中创建相对路径?

如何在Visual Studio中更改“许可给”?

如何在Visual Studio中升级ReSharper?

如何在Visual Studio中获取行号

Visual Studio C ++相对路径

在C#中定义Visual Studio Project文件的相对路径

在Visual Studio中为SFML设置相对路径

如何从 Windows 窗体、Visual Studio 中背景的相对路径拍摄照片?

使用具有相对路径的文件进行 Visual Studio 单元测试

如何在visual studio中调试python

如何在php中控制相对路径

如何从另一个目录导入具有相对路径的 Python 模块?

有没有办法在 Visual Studio 的“命令行参数”启动选项中使用相对路径?