模块化 js 模式中的 Webfont 加载器



webfont loader 文档提供了以下示例脚本:

WebFontConfig = {
  typekit: { id: 'xxxxxx' }
};
(function(d) {
  var wf = d.createElement('script'), s = d.scripts[0];
  wf.src = 'https://ajax.googleapis.com/ajax/libs/webfont/1.6.16/webfont.js';
  s.parentNode.insertBefore(wf, s);
})(document);

如果我将其直接放在页面<head>的脚本标签中,它可以正常工作。如果我将其包装在一个函数中并尝试导出它,我会在控制台中收到此错误:

捕获的引用错误:未定义 WebFontConfig

这是我尝试包装它的方式:

function initialiseWebFontLoader() {
    WebFontConfig = {
        google: {
            families: ['Open Sans', 'Lora']
        },
        timeout: 1500
    };
    (function(d) {
        const wf = d.createElement('script'), s = d.scripts[0];
        wf.src = 'https://ajax.googleapis.com/ajax/libs/webfont/1.6.16/webfont.js';
        s.parentNode.insertBefore(wf, s);
    })(document);
}
module.exports = {
    initialiseWebFontLoader: initialiseWebFontLoader
};

我在这里做错了什么吗?

哦,我需要将WebFontConfig附加到窗口对象。

window.WebFontConfig .

最新更新