冲突的模板标签
我想在Django中使用AngularJS,但他们都使用{{ }}
作为模板标签。 有没有简单的方法来改变其中一个使用其他自定义模板标签?
对于Angular 1.0,您应该使用$ interpolateProvider apis来配置插值符号:http://docs.angularjs.org/api/ng.$interpolateProvider。
像这样的应该做的诀窍:
myModule.config(function($interpolateProvider) {
$interpolateProvider.startSymbol('{[{');
$interpolateProvider.endSymbol('}]}');
});
请记住两件事:
{{ }}
的第三方指令(组件),那么您的配置将会破坏它们。 (修复未决) 虽然对于第一个问题我们无能为力,除了警告人,我们确实需要解决第二个问题。
你可以尝试逐字Django模板标签并像这样使用它:
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.4/angular.min.js"></script>
{% verbatim %}
<div ng-app="">
<p>10 is {{ 5 + 5 }}</p>
</div>
{% endverbatim %}
如果您正确地分隔了页面的各个部分,那么您可以在“原始”标签范围内轻松使用angularjs标签。
在jinja2
{% raw %}
// here you can write angularjs template tags.
{% endraw %}
在Django模板(1.5以上)
{% verbatim %}
// here you can write angularjs template tags.
{% endverbatim %}
链接地址: http://www.djcxy.com/p/56515.html
上一篇: Conflicting template tags
下一篇: 'NoneType' object is not subscriptable in using django smart selects