插件书写规则

YinYong edited this page Oct 2, 2013 · 3 revisions

插件提供了对模板的自定义化处理环节。node-ursa插件均由nodejs的module构成,与python版ursa完全不兼容,但是应该可以很容易地进行翻译。

注意插件仅对HTML模板有效,对CSS和JS无效,并且仅在开发服务器模式下有效,build时不起作用。

声明插件

在manifest.json中声明插件:

"serverplugins":["./plugin/test-plugin","./plugin/filter-plugin"]

理论上插件可以位于任何目录,但是路径要相对于工作目录;插件名不包含'.js'后缀。

插件实现

一个简单的插件实现:

module.exports={
    main:function(token,content){
        return content.replace(/<title>[\s]*?</title>/i,"<title>Hello</title>");
    }
};

一个插件对象必须包含一个‘main’方法,两个参数分别为模板相对于模板目录的名称(不包含扩展名),和模板内容。返回值为插件处理后的模板内容。这里为任何空title的页面增加默认title。

插件经修改后必须重新启动开发服务器。