加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

angularjs – 如何转换成属性?

发布时间:2020-12-17 08:29:26 所属栏目:安全 来源:网络整理
导读:是否可能以某种方式使用ngTransclude作为属性值,而不是替换内部的HTML内容?例如这个简单的指令 var testapp = angular.module('testapp',[])testapp.directive('tag',function() { return { template: 'h1a href="{{transcludeHere}}" ng-transclude/a/h1'
是否可能以某种方式使用ngTransclude作为属性值,而不是替换内部的HTML内容?例如这个简单的指令
var testapp = angular.module('testapp',[])

testapp.directive('tag',function() {
  return {
    template: '<h1><a href="{{transcludeHere}}" ng-transclude></a></h1>',restrict: 'E',transclude: true
  }
});

并使用它

<tag>foo</tag>

我想把它翻译成

<h1><a href="foo">foo</a></h1>

有什么办法做,或者我必须使用属性而不是转录?

这里有一个fiddle的例子

这样的东西:
var testapp = angular.module('testapp',function() {
  return {
    restrict: 'E',template: '<h1><a href="{{transcluded_content}}">{{transcluded_content}}</a></h1>',replace: true,transclude: true,compile: function compile(tElement,tAttrs,transclude) {
        return {
            pre: function(scope) {
                transclude(scope,function(clone) {
                  scope.transcluded_content = clone[0].textContent;
                });
            }
        }
    }
  }
});?

fiddle。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读