解決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

相關文章
相關標籤/搜索