angular 指令中调用controller方法传参undefined

这是指令中的html片段 点击 进入directive

 <li ng-repeat=" item in dorpData.subItems" ng-click="selectOption({$event:$event,option:item.option})">{{item.title}}</li>

这是调用指令的片段

<div dorp-down class="dorpdown order-time" dorp-data="orderTime" search-dorp="searchOrder(param)"></div>

这是指令的内容

.directive('dorpDown',function(){
        return {
            restrict:'EA',
            scope: {
                dorpData:'=',
                searchDorp:'&'
            },
            templateUrl: 'views/common/userDorpdown.html',
            link: function(scope,element,attrs){
                scope.showDorpLayer = function(){
                    scope.showFlag = true;
                };
                scope.selectOption = function(event){
                    scope.selectedVal = event.$event.target.innerHTML;
                    scope.showFlag = !scope.showFlag;
                    scope.searchDorp(event.option);//调用controller里的方法

                };
                scope.hideDorpLayer = function(){
                    scope.showFlag = false;
                };
            }
        }
    })
    $scope.searchOrder = function(keyWords){//获得的keoword是undefined
        var searchUrl = apiUrl.rootUrl + apiUrl.userOrder+'?userId='+cookieService.getCookie('user1').userId+'&keyWord='+keyWords ;
        httpService.query( searchUrl, function (data) {
            $scope.orderData = data;
            $scope.totalCount = data.total;
        });
    };

现在问题是 点击 li 调用directive的方法 这里参数都能获得到,然后调用controller里的方法 这时keywords就为undefined了
为什么呢?

阅读 2.9k
2 个回答
scope.searchDorp({param:event.option});

有没有比较好的directive的教程 准备写一个图片上传并预览的directive

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题