两者发生冲突后,首先对djagon不熟悉,只好从art-template上下功夫
art-template有两种解析规则,第一种解析规则并不会与djagon发生冲突,只有用到第二种解析规则的时候才会有djagon发生冲突。 // 原始语法的界定符规则 template.defaults.rules[0].test = /<%(#?)((?:==|=#|[=-])?)[ \t]*([\w\W]*?)[ \t]*(-?)%>/; // 标准语法的界定符规则 template.defaults.rules[1].test = /{{([@#]?)[ \t]*(\/?)([\w\W]*?)[ \t]*}}/;
废话不多说,直接划重点。
修改art-templa的界定符。
实现方法如下:
template.defaults.rules[1] = /{@([@#]?)[ \t]*(\/?)([\w\W]*?)[ \t]*@}/;(本人技术尚low,不会用正则来修改,就用了最简单粗暴的方法)。
我把{{...}}改成了{@...@},你也可以把这个换成你自己喜欢的符号。
这样修改后就可以在djagon模板中正常使用art-template模板了。
附加:
如果模板中循环嵌套循环 别用 {{each ... }} .... {{ /each }}
用这个还是靠谱点 <% for(let i = 0; i< ..; i++){ %>
循环语句
<%}%>