我想将 AngularJS 与 Django 一起使用,但是它们都使用{{ }}
作为他们的模板标签。有没有一种简单的方法可以更改两者之一以使用其他自定义模板标签?
对于 Angular 1.0,您应该使用 $interpolateProvider api 来配置插值符号:http://docs.angularjs.org/api/ng.$interpolateProvider http://docs.angularjs.org/api/ng.%24interpolateProvider.
像这样的事情应该可以解决问题:
myModule.config(function($interpolateProvider) {
$interpolateProvider.startSymbol('{[{');
$interpolateProvider.endSymbol('}]}');
});
请记住两件事:
- 混合服务器端和客户端模板并不是一个好主意,应谨慎使用。主要问题是:可维护性(难以阅读)和安全性(双重插值可能会暴露新的安全向量 - 例如,虽然服务器端和客户端模板本身的转义可能是安全的,但它们的组合可能不安全)。
- 如果您开始使用第三方指令(组件)
{{ }}
在它们的模板中,那么您的配置将破坏它们。 (修复待定 https://github.com/angular/angular.js/pull/1256)
虽然除了警告人们之外我们对第一个问题无能为力,但我们确实需要解决第二个问题。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)