1
以下に似たAngular 2サービスがあります。これは正しく機能しますが、単体テストを実行しても(期待していなくても)、次のTypeErrorで失敗します。私のサービスはTypeScriptで書かれており、正しいインポートがあります。しかし、1つのノードモジュールがJavaScriptで書かれているので(module.export = ....)、インポートすることはできず、代わりに 'require'する必要があります。私はこれを模倣するか、それを正しく注入してユニットテストで失敗しないようにする方法が不思議です。実際にはうまく動作しますが、テストケースが失敗するだけです。Angular 2仕様ファイルのrequire()の扱い方
角度2 Servive:
let x = require('some-file')
@Injectable()
export class MyService {
constructor() {
x(foo)
}
}
角度2テストファイル:
describe('Service: MyService',() => {
let service: MyService;
beforeEach(() => {
TestBed.configureTestingModule({
providers: [MyService]
});
});
beforeEach(inject([NativeBridgeService], s => {
service = s;
}));
});
例外TypeError:xはあなたがそのLIB用タイピングをintstallしなければならない機能
私が書いたカスタムjsライブラリです。 TypeScriptの型定義ファイルをいくつか追加するだけですか?例えば。 dts? – user2516663
yeap、あなたが作者であれば、d.tsファイルをlib – kit
に置くこともできますが、d.tsファイルは次のように表示されます: export * from 'my-module' – user2516663