ada*_*eck 11 javascript facebook webpack
我正在使用webpack将我的JavaScript代码保存在模块中,但是我在尝试加载Facebook JS SDK时遇到了问题.我尝试使用externals
webpack 的选项,但由于库是异步加载的,我认为它不会提供我想要的答案.
webpack存在一个解决此问题的问题.但是,我认为它不再适用.https://github.com/webpack/webpack/issues/367
这个问题的好方法是什么?我应该同步加载SDK吗?
由于 webpack 只是一个模块捆绑器,因此您应该使用模块加载器来完成这项工作,如果您想使用 AMD 模块,则需要使用RequireJS ,或者只是使用这个 lib script.js,您可以这样做。
import $script from "scriptjs";
$script("//url/thescript.js", () => {
// ...
});
Run Code Online (Sandbox Code Playgroud)
编辑:包装一些更简单易用的东西:
import $script from "scriptjs";
export default function importAsync(url) {
return new Promise((resolve, reject) => {
$script(url, resolve); //just a simple, version. You should treat the reject case
});
});
Run Code Online (Sandbox Code Playgroud)
然后简单地使用它,如下所示:
//...
importAsync("//url.to/script.js").then(module => {
//...
})
Run Code Online (Sandbox Code Playgroud)
如果您将来想更改模块加载器,这种方式会更简单:)
归档时间: |
|
查看次数: |
1681 次 |
最近记录: |