javascript - angularjs中两个同样的指令在页面中如何区分?
PHPz
PHPz 2017-04-10 17:57:52
[JavaScript讨论组]

demo:

在应用中自定义一个月份选择器指令,这个指令在首页中有连个地方用到:

//这是第一次使用
<p on-month-select class=''></p>
//这是第二次使用
<p on-month-select class=''></p>

指令的html简化后是这样

<p>
    <select ng-model="month" ng-change='selectUpdate()'>
        <option value='1月'>1</option>
        <option value='2月'>2</option>
    </select>
</p>

指令的逻辑简化后是这样:

app.directive('onMonthSelect', function () {
    return {
            restrict: "AE",
            templateUrl:'directives/month.html',
            replace: true,
            link: function( scope, element, attrs ) {
                  console.log('some thing');
            }
        };
});

在控制中,函数selectUpdate监听select下拉框的变化,在selectUpdate的逻辑中,如何知道当前激活的是哪个下拉框?因为页面中针对不同的下拉框,有一些独特的业务逻辑需要加进去

PHPz
PHPz

学习是最好的投资!

全部回复(2)
高洛峰

指令是可以重复使用的,不应该与业务逻辑绑定。可以暴露接口,执行回调函数来处理业务逻辑。

PHP中文网

ng-model=""绑定,{{}}获取啊。初始化写在controller,逻辑的话依赖注入去写,这样安全些。

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

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