Javascript 如何在指令中重新加载html的一部分?
我有这样一种情况: 我的指令删除一些html块并存储它。 以下是链接功能:Javascript 如何在指令中重新加载html的一部分?,javascript,html,angularjs,Javascript,Html,Angularjs,我有这样一种情况: 我的指令删除一些html块并存储它。 以下是链接功能: function link(scope, element, attrs) { var storedHtml = angular.copy(angular.element(el)[0].innerHTML); angular.element(el)[0].innerHTML = ''; $timeout(function() { angular.element(el)[0].innerHTML = s
function link(scope, element, attrs) {
var storedHtml = angular.copy(angular.element(el)[0].innerHTML);
angular.element(el)[0].innerHTML = '';
$timeout(function() {
angular.element(el)[0].innerHTML = storedHtml;
scope.$apply();
}, 5000);
}
例如,我在ng repeat
中使用我的指令:
<ul>
<li ng-repeat="item in data">
<div my-directive>
<p>{{item.name}} </p>
</div>
</li>
</ul>
是否有可能重新提交html块的这一部分,或至少整个ng repeat块以更新值?与其这样做,为什么不直接将该项传递到您的指令中,并让指令的模板输出您想要的内容
<ul>
<li ng-repeat="item in data">
<div my-directive data="item"></div>
</li>
</ul>
您还可以从此处的
项
访问任何其他属性,并将它们返回到视图中 要渲染什么<代码>{item.name}或评估值
?@KoushikChatterjee第二个评估值参考隔离范围:
<ul>
<li ng-repeat="item in data">
<div my-directive data="item"></div>
</li>
</ul>
scope: {
data: '='
},
template: '<p>{{ data.name }}</p>'