Javascript Webstorm-Typescript、AngularJS和生成器ng poly Getter/Setter
我有一个名为lobb constants.ts的文件:Javascript Webstorm-Typescript、AngularJS和生成器ng poly Getter/Setter,javascript,angularjs,typescript,gulp,webstorm,Javascript,Angularjs,Typescript,Gulp,Webstorm,我有一个名为lobb constants.ts的文件: module lobby.constants { export class Constants { static get Default() : any { return { baseUrl: 'http://localhost:2999' }; } } } 我将通过以下方式加载它: .constant('appConstant', lobby.constants.Cons
module lobby.constants {
export class Constants {
static get Default() : any {
return {
baseUrl: 'http://localhost:2999'
};
}
}
}
我将通过以下方式加载它:
.constant('appConstant', lobby.constants.Constants.Default);
不幸的是,我在Webstorm中得到了以下错误消息,这非常有意义,因为gulp将ECMAScript版本3作为默认输出
app\lobb\constants\lobb constants.ts(8,16):只有1056个访问器
针对ECMAScript 5及更高版本时可用
是否有办法更改gulpfile中的此特定设置
生成器ng poly:在生成的
gulpfile.js
文件中,修改
config.tsProject = $.typescript.createProject({
declarationFiles: true,
noExternalResolve: false
});
将out
选项
config.tsProject = $.typescript.createProject({
declarationFiles: true,
noExternalResolve: false,
out: 'es5'
});
这适用于较旧的生成项目。较新的项目是通过
gulpfile.js
中的config.tsSourceProject和config.tsTestProject生成的,这两个项目都需要使用out选项进行修改。generator ng poly文档似乎暗示它使用Babel来支持ES6,所以。。。也许他们忘记将ES5目标传递给tsc了?Edit看起来在支持ES6/ES2015方面存在一个未决问题~当时我正在使用“typescript”选项。有没有办法隐式地将ECMA5声明为输出?我已经做了您描述的更改,但仍然收到相同的错误消息。是否有其他设置需要更改?