我正在使用JSPM创建一个基本的Angular 2工作流程.它可以工作(请参阅https://github.com/simonh1000/Angular2-beta-jspm),但我没有得到intellisense,因为VS Code没有看到Angular jspm模块,如图中所示.我该怎么办?
这是我的,tsconfig.json
包括埃里克的建议:
{ "compilerOptions": { "target": "es5", "module": "commonjs", "removeComments": true, "emitDecoratorMetadata": true, "experimentalDecorators": true, "sourceMap": true, "moduleResolution": "node" } }
我可以通过使用这种import语句在VS Code中取得一些进展
import { Component, View } from '../jspm_packages/npm/angular2@2.0.0-beta.0/ts/core';
但是当我运行它时,我得到一个错误:
GET http://127.0.0.1:8080/jspm_packages/npm/angular2@2.0.0-beta.0/ts/core.js
这是config.js的摘录
System.config({ baseURL: "/", defaultJSExtensions: true, transpiler: "typescript", typescriptOptions: { "module": "commonjs", "emitDecoratorMetadata": true }, paths: { "github:*": "jspm_packages/github/*", "npm:*": "jspm_packages/npm/*" }, packages: { "app": { "main": "main", "defaultExtension": "ts" } },
Nico.. 6
目前预计这是因为TypeScript编译器不知道如何"查找"JSPM包.
VSCode依赖于TypeScript编译器,编译器只知道通过NPM包查找模块(例如查看内部node_modules/
- 这就是做什么"moduleResolution": "node"
).
由于您尚未通过NPM安装Angular 2,因此它不在node_modules/
文件夹中,编译器也找不到它.如果您运行tsc
命令行编译器,则应该得到相同的错误.
正在 讨论解决方案,似乎TypeScript @ next有一些基本支持来手动指定paths
查找模块的列表(我还没有测试过它).它似乎并不理想,因为每次JSPM依赖项更改时您都必须手动维护此列表.
另一种方法是除了JSPM(例如npm install angular2 --save
或者--save-dev
)之外还通过NPM安装Angular 2,但这会重复依赖性,并且在更改时也需要手动维护.
这就是生活在前沿......
目前预计这是因为TypeScript编译器不知道如何"查找"JSPM包.
VSCode依赖于TypeScript编译器,编译器只知道通过NPM包查找模块(例如查看内部node_modules/
- 这就是做什么"moduleResolution": "node"
).
由于您尚未通过NPM安装Angular 2,因此它不在node_modules/
文件夹中,编译器也找不到它.如果您运行tsc
命令行编译器,则应该得到相同的错误.
正在 讨论解决方案,似乎TypeScript @ next有一些基本支持来手动指定paths
查找模块的列表(我还没有测试过它).它似乎并不理想,因为每次JSPM依赖项更改时您都必须手动维护此列表.
另一种方法是除了JSPM(例如npm install angular2 --save
或者--save-dev
)之外还通过NPM安装Angular 2,但这会重复依赖性,并且在更改时也需要手动维护.
这就是生活在前沿......