我可以在构建Chrome打包应用程序时使用JSRender和JSViews库(http://www.jsviews.com/)吗?它是否违反了CSP政策?
此库语法使用“script”标记来识别HTML文件中的模板定义...以下是其中的示例
<script id="theTmpl" type="text/x-jsrender"> <div> <em>Name:</em> {{:name}} {{if showNickname && nickname}} (Goes by <em>{{:nickname}}</em>) {{/if}} </div> </script>
答案 0 :(得分:0)
我不相信JsRender和JsViews目前符合CSP标准,因为模板编译使用new Function()
。但是,预编译应该非常简单。请参阅jsrender/issues/30和jsrender/issues/164。计划用于V1或V1.1的预编译工具。
事实上,您只需编写以下内容即可完成自己的预编译:
var myTemplate = $.templates("myTemplateMarkupString");
对于脚本标记,不,您不必使用该方法来声明模板。如上所示,您可以从字符串或预编译进行编译。有关详细信息和示例,请参阅http://www.jsviews.com/#compiletmpl。