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

在AngularJS指令中观察函数的值

发布时间:2020-12-17 09:28:53 所属栏目:安全 来源:网络整理
导读:有没有办法在AngularJS指令中观察函数表达式更改的值?我有以下 HTML和 Javascript,模板中{{editable()}}的插值显示值为true,同时检查Chrome中的HTML元素显示contenteditable为false. 关于我如何看这个函数的值的任何建议都会改变,并相应地更新元素attr?还
有没有办法在AngularJS指令中观察函数表达式更改的值?我有以下 HTML和 Javascript,模板中{{editable()}}的插值显示值为true,同时检查Chrome中的HTML元素显示contenteditable为false.

关于我如何看这个函数的值的任何建议都会改变,并相应地更新元素attr?还是有更好的方式来实现这一点(我还是想评估功能)?

HTML:

<h4 editable="account.hasRole('ROLE_ADMIN')"
                content="doc.heading"></h4>

使用Javascript:

mod
    .directive(
            'editable',function() {
                return {
                    restrict : 'A',template : '<button class="btn pull-right"><i class="icon-pencil"></i></button>{{content}} ({{editable()}})',scope : {
                        'content' : '=','editable' : '&'
                    },link : function(scope,element,attrs) {
                        scope.$watch('editable',function(newValue) {
                            element.attr('contenteditable',newValue());
                        });
                    }
                };
            });
尝试将手表放在’editable()’而不是’可编辑’

说明:这个原因是因为’&’指向属性表达式而不是表达式本身的动态生成的函数包装器.这个特殊的包装函数返回值account.hasRole(‘ROLE_ADMIN’).

(编辑:李大同)

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

    推荐文章
      热点阅读