我正在尝试在使用AngularJS获取值时在symfony2中打印出一个链接。我的花括号有问题。
例如:
<div id="columns">
<div class="block" ng-repeat = "tip in tips">
<img src="{{' {{ tip.imageDocument.webPath }}'}}" alt="">
<div class="detail">
<h2>{{ '{{ tip.title }}' }} {{ '{{ tip.id }}' }}</h2>
<p>{{ '{{ tip.introduction }}'}}</p>
<a href="./tips/{{'{{ tip.id }}'}}" class="button">{% trans %}Read more{% endtrans %}</a>
</div>
</div>
</div>
我认为如果我在角度变量“{{variable'}}'周围放置花括号
,它就有效 像这样 {{ '{{ variable }}' }}
但这对我来说似乎不对。 此链接也不起作用。 它被打印出%7B%7B%20tip.id%20%7D%7D,这是明显的,因为大括号..
任何?
由于
答案 0 :(得分:0)
你试过{{ '{{ variable }}' | raw }}
吗?看起来在您的Twig配置中打开了转义。它是默认的。
编辑:好的,看起来实际上是浏览器自动&#34; urlencoding&#34;大括号。我认为问题不在于Twig,事实上它与Angular.js有关。在使用Angular时你不应该使用href,你应该使用ng-href
代替。
答案 1 :(得分:0)
您是否试图逃避内部花括号?
<div id="columns">
<div class="block" ng-repeat = "tip in tips">
<img src="{{' \{\{ tip.imageDocument.webPath \}\}'}}" alt="">
<div class="detail">
<h2>{{ '\{\{ tip.title \}\}' }} {{ '\{\{ tip.id \}\}' }}</h2>
<p>{{ '\{\{ tip.introduction \}\}'}}</p>
<a href="./tips/{{'\{\{ tip.id \}\}'}}" class="button">{% trans %}Read more{% endtrans %}</a>
</div>
</div>
</div>
这很丑,但也许这可以帮助你。
答案 2 :(得分:0)
无论如何都要使用verbatim
标记来显示角度的变量。
例如:
{% verbatim %} {{ tip.title }}{% endverbatim %}
现在{{ tip.title }}
不会被twig解析,而是由angularjs解析。
答案 3 :(得分:0)
你应该使用 {%verbatim%} 来逃避来自TWIG的curlies,并使用src和href的 ng - * 属性来允许AngularJS很好地解析它,比如这样:
<div id="columns">
<div class="block" ng-repeat="tip in tips">
<img ng-src="{% verbatim %}{{ tip.imageDocument.webPath }}{% endverbatim %}" alt="">
<div class="detail">
<h2>{% verbatim %}{{ tip.title + ' ' + tip.id }}{% endverbatim %}</h2>
<p>{% verbatim %}{{ tip.introduction }}{% endverbatim %}</p>
<a ng-href="./tips/{% verbatim %}{{ tip.id }}{% endverbatim %}" class="button">
{% trans %}Read more{% endtrans %}
</a>
</div>
</div>
</div>
有关 ng - * 属性
的更多示例