Codekit 无法在 angular v5 项目中编译 main.ts 和 app.component.spec.ts
Codekit fails to compile main.ts and app.component.spec.ts in angular v5 project
我是 运行 Angular 5.1.0 通过终端并在 /src/scss 中为 sass 设置了一个文件夹,我正在使用 codekit 编译 sass.
一切都运行很好,在最后几次保存之前编译没有错误,现在当我保存我的css代码包时告诉我main.ts和app.component.spec.ts 编译失败。
这是 运行 codekit 和 angular 的已知问题吗?如果没有,有没有简单的方法来解决这个问题,这真的很烦我,我可以选择通过 codekit 忽略这些文件并继续正常吗?
以下 Codekit 语句:
/src/app/app.component.spec.ts
TypeScript:node_modules/@angular/core/src/change_detection/differs/default_iterable_differ.d.ts(12,32):错误 TS2304:找不到名称 'Iterable'。
node_modules/@angular/core/src/change_detection/differs/default_keyvalue_differ.d.ts(24,16):错误 TS2304:找不到名称 'Map'。
node_modules/@angular/core/src/change_detection/differs/default_keyvalue_differ.d.ts(32,16):错误 TS2304:找不到名称 'Map'。
node_modules/@angular/core/src/change_detection/differs/iterable_differs.d.ts(14,48):错误 TS2304:找不到名称 'Iterable'。
node_modules/@angular/core/src/change_detection/differs/keyvalue_differs.d.ts(22,18):错误 TS2304:找不到名称 'Map'。
node_modules/@angular/core/src/di/reflective_provider.d.ts(87,123):错误 TS2304:找不到名称 'Map'。
node_modules/@angular/core/src/di/reflective_provider.d.ts(87,165):错误 TS2304:找不到名称 'Map'。
node_modules/rxjs/Observable.d.ts(58,60): error TS2693: 'Promise' 仅引用类型,但在此处用作值。
node_modules/rxjs/Observable.d.ts(73,59): 错误 TS2693: 'Promise' 仅指类型,但在此处用作值。
/src/main.ts
TypeScript:node_modules/@angular/common/src/directives/ng_class.d.ts(48,34):错误 TS2304:找不到名称 'Set'。
node_modules/@angular/compiler/src/aot/compiler.d.ts(71,32):错误 TS2304:找不到名称 'Map'。
node_modules/@angular/compiler/src/compile_metadata.d.ts(322,20):错误 TS2304:找不到名称 'Set'。
node_modules/@angular/compiler/src/compile_metadata.d.ts(324,28):错误 TS2304:找不到名称 'Set'。
node_modules/@angular/compiler/src/compile_metadata.d.ts(326,15):错误 TS2304:找不到名称 'Set'。
node_modules/@angular/compiler/src/compile_metadata.d.ts(328,23):错误 TS2304:找不到名称 'Set'。
node_modules/@angular/compiler/src/compile_metadata.d.ts(330,17):错误 TS2304:找不到名称 'Set'。
node_modules/@angular/compiler/src/compile_metadata.d.ts(332,25):错误 TS2304:找不到名称 'Set'。
node_modules/@angular/compiler/src/output/output_ast.d.ts(514,63):错误 TS2304:找不到名称 'Set'。
node_modules/@angular/compiler/src/view_compiler/type_check_compiler.d.ts(29,161):错误 TS2304:找不到名称 'Map'。
node_modules/@angular/core/src/change_detection/differs/default_iterable_differ.d.ts(12,32):错误 TS2304:找不到名称 'Iterable'。
node_modules/@angular/core/src/change_detection/differs/default_keyvalue_differ.d.ts(24,16):错误 TS2304:找不到名称 'Map'。
node_modules/@angular/core/src/change_detection/differs/default_keyvalue_differ.d.ts(32,16):错误 TS2304:找不到名称 'Map'。
node_modules/@angular/core/src/change_detection/differs/iterable_differs.d.ts(14,48):错误 TS2304:找不到名称 'Iterable'。
node_modules/@angular/core/src/change_detection/differs/keyvalue_differs.d.ts(22,18):错误 TS2304:找不到名称 'Map'。
node_modules/@angular/core/src/di/reflective_provider.d.ts(87,123):错误 TS2304:找不到名称 'Map'。
node_modules/@angular/core/src/di/reflective_provider.d.ts(87,165):错误 TS2304:找不到名称 'Map'。
node_modules/@angular/platform-browser/src/browser/browser_adapter.d.ts(79,33):错误 TS2304:找不到名称 'Map'。
node_modules/@angular/platform-browser/src/dom/dom_adapter.d.ts(97,42):错误 TS2304:找不到名称 'Map'。
node_modules/@angular/platform-browser/src/dom/shared_styles_host.d.ts(11,30):错误 TS2304:找不到名称 'Set'。
node_modules/@angular/platform-browser/src/dom/shared_styles_host.d.ts(22,30):错误 TS2304:找不到名称 'Set'。
node_modules/rxjs/Observable.d.ts(58,60): error TS2693: 'Promise' 仅引用类型,但在此处用作值。
node_modules/rxjs/Observable.d.ts(73,59): 错误 TS2693: 'Promise' 仅指类型,但在此处用作值。
Codekit 附带的 .ts 输出设置设置为 es3 和 react.js,您必须 运行 通过您的项目并手动更新设置以反映项目类型,在我的例子中这是为了"ECMAScript Target Version: ES6" 和 "JSX Handling: Preserve".
我是 运行 Angular 5.1.0 通过终端并在 /src/scss 中为 sass 设置了一个文件夹,我正在使用 codekit 编译 sass.
一切都运行很好,在最后几次保存之前编译没有错误,现在当我保存我的css代码包时告诉我main.ts和app.component.spec.ts 编译失败。
这是 运行 codekit 和 angular 的已知问题吗?如果没有,有没有简单的方法来解决这个问题,这真的很烦我,我可以选择通过 codekit 忽略这些文件并继续正常吗?
以下 Codekit 语句:
/src/app/app.component.spec.ts
TypeScript:node_modules/@angular/core/src/change_detection/differs/default_iterable_differ.d.ts(12,32):错误 TS2304:找不到名称 'Iterable'。 node_modules/@angular/core/src/change_detection/differs/default_keyvalue_differ.d.ts(24,16):错误 TS2304:找不到名称 'Map'。 node_modules/@angular/core/src/change_detection/differs/default_keyvalue_differ.d.ts(32,16):错误 TS2304:找不到名称 'Map'。 node_modules/@angular/core/src/change_detection/differs/iterable_differs.d.ts(14,48):错误 TS2304:找不到名称 'Iterable'。 node_modules/@angular/core/src/change_detection/differs/keyvalue_differs.d.ts(22,18):错误 TS2304:找不到名称 'Map'。 node_modules/@angular/core/src/di/reflective_provider.d.ts(87,123):错误 TS2304:找不到名称 'Map'。 node_modules/@angular/core/src/di/reflective_provider.d.ts(87,165):错误 TS2304:找不到名称 'Map'。 node_modules/rxjs/Observable.d.ts(58,60): error TS2693: 'Promise' 仅引用类型,但在此处用作值。 node_modules/rxjs/Observable.d.ts(73,59): 错误 TS2693: 'Promise' 仅指类型,但在此处用作值。
/src/main.ts
TypeScript:node_modules/@angular/common/src/directives/ng_class.d.ts(48,34):错误 TS2304:找不到名称 'Set'。 node_modules/@angular/compiler/src/aot/compiler.d.ts(71,32):错误 TS2304:找不到名称 'Map'。 node_modules/@angular/compiler/src/compile_metadata.d.ts(322,20):错误 TS2304:找不到名称 'Set'。 node_modules/@angular/compiler/src/compile_metadata.d.ts(324,28):错误 TS2304:找不到名称 'Set'。 node_modules/@angular/compiler/src/compile_metadata.d.ts(326,15):错误 TS2304:找不到名称 'Set'。 node_modules/@angular/compiler/src/compile_metadata.d.ts(328,23):错误 TS2304:找不到名称 'Set'。 node_modules/@angular/compiler/src/compile_metadata.d.ts(330,17):错误 TS2304:找不到名称 'Set'。 node_modules/@angular/compiler/src/compile_metadata.d.ts(332,25):错误 TS2304:找不到名称 'Set'。 node_modules/@angular/compiler/src/output/output_ast.d.ts(514,63):错误 TS2304:找不到名称 'Set'。 node_modules/@angular/compiler/src/view_compiler/type_check_compiler.d.ts(29,161):错误 TS2304:找不到名称 'Map'。 node_modules/@angular/core/src/change_detection/differs/default_iterable_differ.d.ts(12,32):错误 TS2304:找不到名称 'Iterable'。 node_modules/@angular/core/src/change_detection/differs/default_keyvalue_differ.d.ts(24,16):错误 TS2304:找不到名称 'Map'。 node_modules/@angular/core/src/change_detection/differs/default_keyvalue_differ.d.ts(32,16):错误 TS2304:找不到名称 'Map'。 node_modules/@angular/core/src/change_detection/differs/iterable_differs.d.ts(14,48):错误 TS2304:找不到名称 'Iterable'。 node_modules/@angular/core/src/change_detection/differs/keyvalue_differs.d.ts(22,18):错误 TS2304:找不到名称 'Map'。 node_modules/@angular/core/src/di/reflective_provider.d.ts(87,123):错误 TS2304:找不到名称 'Map'。 node_modules/@angular/core/src/di/reflective_provider.d.ts(87,165):错误 TS2304:找不到名称 'Map'。 node_modules/@angular/platform-browser/src/browser/browser_adapter.d.ts(79,33):错误 TS2304:找不到名称 'Map'。 node_modules/@angular/platform-browser/src/dom/dom_adapter.d.ts(97,42):错误 TS2304:找不到名称 'Map'。 node_modules/@angular/platform-browser/src/dom/shared_styles_host.d.ts(11,30):错误 TS2304:找不到名称 'Set'。 node_modules/@angular/platform-browser/src/dom/shared_styles_host.d.ts(22,30):错误 TS2304:找不到名称 'Set'。 node_modules/rxjs/Observable.d.ts(58,60): error TS2693: 'Promise' 仅引用类型,但在此处用作值。 node_modules/rxjs/Observable.d.ts(73,59): 错误 TS2693: 'Promise' 仅指类型,但在此处用作值。
Codekit 附带的 .ts 输出设置设置为 es3 和 react.js,您必须 运行 通过您的项目并手动更新设置以反映项目类型,在我的例子中这是为了"ECMAScript Target Version: ES6" 和 "JSX Handling: Preserve".