解决AngularJS和Django模板标签冲突问题

Django和AngularJS在模板中使用一样的符号来引用变量,例如 {{variable_name}}。django

有两种解决办法,各有利弊。一个修改AngularJS模板语法,另外一个使用Django的标签。app

 

1. 修改Django:ide

使用verbatim标签,verbatim标签在Django 1.5之后被加入Django。缺点是使用起来比较啰嗦。ui

 

2. 更简洁的解决方案是修改AngularJS的模板语法:spa

var my_app = angular.module('MyApp').config(function($interpolateProvider) {
    $interpolateProvider.startSymbol('{$');
    $interpolateProvider.endSymbol('$}');
});

如今你能够区分变量来自server端{{ varname }}, 仍是client端{$ varname $}code

缺点是你不能结合第三方的AngularJS使用第三方的指令了。server

相关文章
相关标签/搜索