4
我有一個傳統的JS文件,寫在下面RequireJS(AMD)模塊註釋:如何在Angular 4.x(Angular Cli)應用程序中導入RequireJS(AMD)模塊?
define('mymodule', [], function(){
// ... bla bla bla
return {
calculate: function() { return 1 + 1; }
};
});
我從使用RequireJS另一個(傳統)項目導入此文件,因此 - 我不能更改使用的模塊定義。
我想將其導入到用TypeScript編寫的Angular Cli(Angular 4.x)應用程序中。
由於角CLI使用的WebPack 2建設項目,支持AMD,我以爲我可以導入像這樣:
import * as MyModule from './mymodule.js';
...但是這不工作,它會觸發一個錯誤的mymodule.js
是不是一個模塊。
任何想法(或解決方法)如何導入這個舊模塊?
當'mymodule.js'文件注入了這個'exports'和它確實工作時,公共模塊的方法(值)的定義是這樣的:'exports.value =「AAA」;'不過,我用例是不同的。我的'mymodule.js'文件有不同的邏輯。 'define'語句沒有注入'exports',它只是返回公共模塊方法(或值)。你有什麼建議,如果我可以導入它**沒有**在mymodule.js中更改邏輯/結構(不幸的是,這是我需要處理的主要需求)? –
這是命名模塊,我不知道他們爲什麼不工作。嘗試執行System.import('./ mymodule.js')。然後(x => console.log(x)); –
不幸的是,這也不起作用。 TypeScript錯誤:'無法找到名稱'System'' –