4-13 Angular-指令&修饰符

指令&修饰符

<body ng-app="app" ng-controller="skController">

<input type="text" ng-model="title">

<hr>

<!--注意:往指令中传方法加()-->
<xmg childmethod="pareMethod()" skshow="paraShow()"></xmg>

</body>

<script src="angular1.6.js"></script>
<script>
    //创建模块
    var app = angular.module('app', []);
    //创建控制器
    app.controller('skController', ['$scope',function ($scope) {

        $scope.title = '俺是父控制的标题111';

        $scope.pareMethod = function () {
            alert("执行父级控制器方法");
        }

        $scope.paraShow = function () {
            console.log('你若花开');
        }

    }]);

    app.directive('xmg', function () {
        return{
            restrict:'EA',
            //注意:指令默认和父级使用同一个 $scope
            //子级可以去指定作用域
            template:'<h1><button ng-click="click()">子级按钮</button></h1>',
            replace:true,
            controller:function ($scope) {
                //执行从外界传入的方法
                $scope.click = function () {
                    $scope.childmethod();
                    $scope.skshow();
                }
            },

            /**
             * &修饰符 ,从外界传入方法
             */
            scope:{
                childmethod:'&', //外界传递进来的方法
                skshow:'&'
            }
        }
    })

</script>

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容