【发布时间】:2016-10-22 05:21:06
【问题描述】:
我正在尝试按照 Aurelia Homepage here 上的视频教程设置一个基本的 Aurelia 项目。我想我已经按照视频中给出的确切步骤进行了操作(只是将 ES6 更改为 Typescript)。
当我尝试通过执行au run --watch 来运行应用程序时,它给了我这个错误:
ReferenceError: define is not defined
at Object.<anonymous> (/aurelia_project/tasks/build.js:1:63)
进一步调查,当我打开aurelia_project目录时,我发现所有.ts文件都充满了cannot find module错误。例如,
[ts] Cannot find module 'gulp'.
[ts] Cannot find module 'aurelia-cli'.
等等..
我是否必须为typescript cli 执行一些额外的步骤才能解析这些模块?
如果有帮助,这里是tsconfig.json:
{
"compileOnSave": false,
"compilerOptions": {
"sourceMap": true,
"target": "es5",
"module": "amd",
"declaration": false,
"noImplicitAny": false,
"removeComments": true,
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"moduleResolution": "node",
"lib": ["es2015", "dom"]
},
"exclude": [
"node_modules",
"aurelia_project"
],
"filesGlob": [
"./src/**/*.ts",
"./test/**/*.ts",
"./typings/index.d.ts",
"./custom_typings/**/*.d.ts"
],
"atom": {
"rewriteTsconfig": false
}
}
【问题讨论】:
-
如果您创建了一个普通的 cli 项目,并且在安装了 dep 和
au run之后,您会收到错误消息,那么有些问题。要么是您的旧 nodejs 版本,要么只是您安装的 cli 版本中存在错误。其次,未设置aurelia_project文件夹内容的类型;但会编译得很好。如果你想要正确的类型,你需要为使用的 gulp 模块安装类型。例如在 tsconfig 中设置 "moduleResolution": "node" 然后npm install @types/gulp --save-dev进行打字。
标签: typescript aurelia