1
我有这个模板:如何从控制器评估模板?
<div class="container-fluid">
<div class="row">
<div class="col-xs-12" ng-repeat="product in ad.products">
<a href="{{product.link}}">
<h1>{{product.title}}</h1>
<img src="{{product.src}}">
<p>{{product.description}}</p>
<h5>{{product.price}}</h5>
</a>
</div>
</div>
</div>
从我的控制器,我需要评估这个模板,以便它检查多少产品已选定,然后将它插每个产品的值到模板中。在完成之后,我还需要删除ng-repeat,这样它不会在外部页面中引发错误,这些错误将在不存在角度的情况下使用。然而,我认为我只是使用正则表达式来查找ng-repeat
和表达式中的所有内容,然后将其删除。
我一直在寻找$interpolate
和$compile
但我无法弄清楚如何与他们从我的控制器工作,以便我想要做什么。这是因为当我在我的模板上使用这些模板,然后控制台记录模板值时,这是一个有很多无稽之谈的函数。
所以这样做:
ad.html = $compile(res.data, $scope);
生成这样的事情:
function(b,c,d){rb(b,"scope");e&&e.needsNewScope&&(b=b.$parent.$new());d=d||{};var h=d.parentBoundTranscludeFn,k=d.transcludeControllers;d=d.futureParentElement;h&&h.$$boundTransclude&&(h=h.$$boundTr…
有人可以阐明如何实现我想要的一些轻?
好吧,似乎编译它,但如何得到一个HTML片段,而不是从一个DOM对象?它也吐出了很多根无限摘要错误。 – Chrillewoodz
@Chrillewoodz我可能知道为什么你需要这样做,因为将html的一部分加入不会使角度绑定可行吗?尽管可能通过编译DOMOM.html()或OR编译DOM [0] .innerHTML' –
因为我需要将片段发送到后端,然后将其存储并将其用作静态HTML。但我不知道如何得到这个片段,因为就像你说它不评估角度绑定那么..嗯。 – Chrillewoodz