使用 angularjs 控制器删除 html 中的目标属性

removing target attribute in html using angularjs controller

A link 正在重定向到一个新选项卡,因为它有一个 target="_blank" 属性,它由 angularjs 在 ng-repeat 中动态放置在那里,我怎么会能够删除目标属性吗?由于某种原因,它是唯一表现出这种行为的 link。我正在考虑使用一些 DOM 操作和 javascript 中的 removeAttr() 来删除打开新选项卡的功能,但这确实是一个快速的 hack,所以我想知道是否有办法通过angularjs 来做。所有这一切的问题在于,数据是使用 angular 服务从 CMS 获取的,然后使用 angular 控制器存储的。

app.directive('noTarget', function () {
  return {
    restrict: 'A',
    link: function (scope, element, attrs) {
      attrs.$set('target', null);
    }
  };
});

而用法是

<a href="..." target="_blank" no-target>...