小白一枚,最近在玩angular。 。 。寫個小demo遇到了個問題:為什麼這裡我加上了controller之後directive的綁定事件就無效的呢。 。 。求解答。 。 。
<!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>
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有預設的方法之類呢(瞎猜的)?求大神幫忙。 。 。 。
PHP中文网2017-05-15 17:10:19
好吧。我自己找到答案了。 。 。只要把directive跟在controller後面寫就不會出現這個問題。 。 。至於為什麼這樣我還在找答案。歡迎大家來評論或提供答案!
---------------------------我是分割線------------------ -------------------
找到原因了。 。 。我對模組的理解錯了,這個問題可以關閉了。 。 。