我有一个小谜题,我在Django的模板中有以下代码行:
{% if x == y %} sth {% endif %}
其中“x”变量属于Django而“y”是angularjs变量。我已经知道可以将$ interpolateProvider更改为{$ $}或者其他,但在这种情况下,这不是一个选项,因为代码应该看起来像:
{% if x == {$ y $} %} sth {% endif %}
那当然会导致错误。如何解决该问题,即在模板标签内使用angularjs变量?
我很感激提示,
祝福,
nykon
答案 0 :(得分:1)
老实说,我认为最好的解决方案不是将Django模板语言与angular混合使用。如果你真的需要依赖一个django提供的变量,那么你应该将它传递给模板,将它存储在一个JS变量中,例如:
var myVariable = {{ django_provided_var }};
在<script>
标记内,然后使用angular来执行显示逻辑。
答案 1 :(得分:0)
我不确定这个解决方案是否适合您,但我曾经使用过的一个选项是JavaScript,我通过了Django&amp; amp; AngularJS到JavaScript并在那里执行条件和操作。
类似的东西:
<script>
var angular_variable = {$ y $}
var django_variable = {{x}}
// Depending on your example you may need to enclose the variables with ' '
var angular_variable = '{$ y $}'
var django_variable = '{{x}}'
if (anguar_variable == django_variable){
// Do whatever you need to do
}
</script>