单击角度指令

gh9

我无法弄清楚为什么我的指令内的ng-click不会触发fooControls clickTest。为什么clickTest无法启动并登录到控制台?有更好的方法吗?

指示

app.directive('fooList', function () {
    return {
        restrict: 'E',
        templateUrl: './app/views/fooList.html',
        scope: { obj: "=" },
        controller: 'fooController',
        controllerAs: 'b'
    };
});

控制者

app.controller('fooController', ['$scope', function ($scope) {
    $scope.obj = [];

    $scope.ClickTest = function (num) {console.log(num);};
}]);

的HTML

<div ng-repeat="book in obj" class="container">
    <div class="row">
        <h4 class="pull-right"><button class="btn btn-small" ng-click="b.ClickTest(1)">ClickTest</button></h4>
    </div>
    <br />
</div>

编辑

上面的html是foo-list的复制粘贴。完整的html是

<html>
<head>
</head>
<body>
<foo-list  obj="searchResults"></foo-list>
</body>
<html
Tui Popenoe

您的html应该更改为将ClickTest函数直接应用于范围,而不是范围中的变量。您还需要<foo-list />为指令包含一个标记。

<div ng-repeat="book in obj" class="container">
    <div class="row">
        <!-- Change b.ClickTest(1) to ClickTest(1)-->
        <h4 class="pull-right"><button class="btn btn-small" ng-click="ClickTest(1)">ClickTest</button></h4>
    </div>
    <br />
    <!-- Insert a foo-list tag -->
    <foo-list  obj="searchResults"></foo-list>
</div>

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章