1
我有一個使用ES2015模塊語法的代碼庫,即。 import foo from 'bar'
。它也有這樣的代碼:如何使用JSDom包裝導入?
// setup.js
var foo = window.foo || '';
我想用jsdom
爲我的測試環境提供了一個模擬的DOM,但我無法弄清楚如何換我導入的代碼。該import
語句來任何代碼之前,所以我不能做到這一點:
import jsdom;
jsdom({
html: '<div></div>',
done:() => {
import setup from 'setup';
}
})
但是如果我離開進口在頂部,屬於它的地方,window
引用之前jsdom
可以參與:
import foo from 'bar'; // this uses the DOM
import jsdom;
jsdom({
html: '<div></div>',
done:() =>() => { console.log('foo'); }
})
有什麼辦法可以解決這個問題,而不需要改用AMD或CommonJS?