1.0.4 • Published 7 years ago
fis-postprocessor-https-swig v1.0.4
fis-postprocessor-https-swig
标准后处理器插件
作用
在fis进行了异构语言编译以及标准化处理后,进行对 swig 模板中的静态资源引用作处理,以支持https请求模式下的访问。
- 将
<img src="{{imgurl}}">
这样的模板标记替换成<img src="{{imgurl|url_trans}}">
,不仅支持img
标签,对所有具有src
属性的标签都起作用,url_trans
这个filter
是个swige
自定义的filter
。 - 将
<img src="http://www.baidu.com/favicon.ico">
这样的静态资源引用替换成<img src="{{'http://www.baidu.com/favicon.ico'|url_trans}}">
- 将
<img src="http://www.baidu.com/{{imgname}}">
这样的混合拼接的src
值,替换成<img src="{{('http://www.baidu.com/' + imgname) |url_trans }}">
- 将内联css中的
background-image
的url
为静态文本值的替换成可以同时支持http/https访问的url. - 将内联css中的
background-image
的url
为模板变量混合拼接的url
添加filter
。
安装
npm -g install fis-postprocessor-https-swig
配置
需要在yog2中先定义好依赖的swig
filter
还需要一个http/https 的域名映射表,如:var domainmap = {'http://www.baidu.com': 'https://www.baidu.com'}
这样的object定义。
fis.config.merge({
...
modules: {
...
postprocessor: {
tpl: 'https-swig,...', // 配置tpl文件的标准化处理插件
},
...
},
'settings': {
postprocessor: {
...
'https-swig': { // 设置fis-postprocessor-https-swig
domainmap: require('./domain-map.js').domainmap, // 域名映射表
filter: 'http2https(_httpsInfo)', // swig filter
ignore: [ // 需要忽略处理的文件列表
'/client/static/js/domain-map.js'
]
},
...
}
},
...
});