Skip to content

引入第三方文件

neoFelhz edited this page Jul 26, 2017 · 1 revision

当您为 Material 主题的开发需要引入第三方库的时候,建议仔细阅读本指南。

为了优化主题的二次加载性能,我们将主题的 css js 文件在页面首次加载时使用 XHR 获取,并存储进 localstorage 里。我们称之为 lsloader。 对于大部分第三方库,我们都推荐使用 lsloader 引入。相关函数和语法可以参考 _partial/head.ejs_partial/import_js.ejs 的有关代码。

由于 localstorage 的特性,lsloader 非常不适合用于加载和存储带有 font-face 定义字体的 css。

对于 inline script,如果需要对应的依赖库如 jQuery 等,需要将 inline script 的 type 设置为 text/ls-javascript,并赋予一个独立的 id。这样的 inline script 将会在 lsloader 把存储在 localstorage 的文件插入页面以后再执行。

对于一些热门的库、有公共 CDN 支持的,需要使用判断,根据用户的配置优先,优先从公共 CDN 库加载。主题配置中关于 CDN 的配置在 theme.vendors 部分。

主题有关库的加载,优先级是 Public CDN > MaterialCDN > Origin;主题有关字体的加载,优先级是 Public CDN > MaterialCDN > Google Fonts or its proxy > Origin