angular.js - 請問這裡的controlller和directive是怎麼影響的?
phpcn_u1582
phpcn_u1582 2017-05-15 17:08:19
0
1
563

小白一枚,最近在玩angular。 。 。寫個小demo遇到了個問題:為什麼這裡我加上了controller之後directive的綁定事件就無效的呢。 。 。求解答。 。 。

html的代碼:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title></title>
    <script src="js/angular.min.js" type="text/javascript"></script>
    <script src="js/directives.js" type="text/javascript"></script>
    <!--<script>
        var app=angular.module('mySystem',[]);
        app.controller("test",function ($scope) {
            $scope.logState=false;
        })
    </script>-->
</head>
<body ng-app="mySystem">
<form  role="search" ng-controller="test" >
    <p class="form-group" >
        <input type="text" class="form-control" placeholder="用户名" ng-model="userName">
        <input type="text" class="form-control" placeholder="密码" ng-model="passWord">
    </p>
    <button type="submit" class="btn btn-default" login-check>登录</button>
</form>
<p>{{logState}}</p>
</body>
</html>

directives.js的程式碼

var app=angular.module('mySystem',[]);
app.directive("loginCheck",function () {
    return{
        restrict:"A",
        link:function (scope, element, attrs) {
            element.bind('click',function () {
                alert('click');
                

            })
        }

    }
});

就是簡單的在form裡面的按鈕加個click綁定事件。如果我剛開始沒有在加上form那裡加上ng-controller=“test”的話,這個directive是可以成功觸發的,但是加上之後就無法起作用了。 。 。請問是什麼原因呢?是angular的form有預設的方法之類呢(瞎猜的)?求大神幫忙。 。 。 。

phpcn_u1582
phpcn_u1582

全部回覆(1)
Ty80

好吧。我自己找到答案了。 。 。只要把directive跟在controller後面寫就不會出現這個問題。 。 。至於為什麼這樣我還在找答案。歡迎大家來評論或提供答案!
---------------------------我是分割線------------------ -------------------
找到原因了。 。 。我對模組的理解錯了,這個問題可以關閉了。 。 。

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板