-
Notifications
You must be signed in to change notification settings - Fork 563
引入第三方文件
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