angular - 在 Angular CLI 中导入 javascript var
问题描述
我是 Angular CLI 的新手,并尝试导入一个 javascript 文件以更熟悉 Angular CLI:
// src/utils.js
var text = "TEST";
var util = {
sayHello: function(name) {
console.log( "Hello, " + name );
}
}
对于这个文件,我创建了一个打字文件:
// src/utils.d.ts
declare module 'utils';
export var util: any;
declare var text: any;
现在我想使用 main.ts 中的 javascript 文件:
// src/main.ts
// ...
import * as util from 'utils';
console.log('TEXT: ', util.text);
util.sayHello("Bob");
// ...
这编译成功,但会引发以下运行时错误:
src/main.ts(12,6):错误 TS2339:“typeof”类型上不存在属性“sayHello”
我错过了什么或者我的代码有什么问题吗?我使用以下版本:
Angular CLI: 1.7.4
Node: 6.14.2
OS: linux x64
Angular: 5.2.10
... animations, common, compiler, compiler-cli, core, forms
... http, language-service, platform-browser
... platform-browser-dynamic, router
@angular/cli: 1.7.4
@angular-devkit/build-optimizer: 0.3.2
@angular-devkit/core: 0.3.2
@angular-devkit/schematics: 0.3.2
@ngtools/json-schema: 1.2.0
@ngtools/webpack: 1.10.2
@schematics/angular: 0.3.2
@schematics/package-update: 0.3.2
typescript: 2.5.3
webpack: 3.11.0