Javascript 如何在指令中重新加载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

我有这样一种情况:

我的指令删除一些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 = 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>'