javascript - angular 指令里直接赋值是什么用法
PHP中文网
PHP中文网 2017-04-10 14:41:20
[JavaScript讨论组]

假设我们自定义一个指令

angular.module.directive('sayHello', function(){
    return {
        restrict: 'A',
        ...
    }
})

偶然间看到过这样的写法

<p say-hello="sth"></p>

我记得一般都是在指令里指定scope选项,然后定义一个开头是=的内部属性,从DOM里把数据传递到指令指令里面.
请问直接在指令sayHello上赋值,那么controller里的$scope.sth会被传到指令里吗?

或者这种用法的原理是什么,求解答

PHP中文网
PHP中文网

认证高级PHP讲师

全部回复(2)
大家讲道理

directivelink中可以获得DOM属性值attrs
想要监听attrs改变的话,可以自定义一个watch
比如你这个

angular.module.directive('sayHello', function(){
    return {
        restrict: 'A',
        link: function(scope, element, attrs) {
            scope.$watch(attrs.sayHello, function(value) {
                console.log("say-hello", value);
            });
        }
    }
})

angularjs的Developer Guide里有介绍

ringa_lee

直接写=的话会。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号