1
你好即時通訊使用這個指令在角JS跟蹤輸入按鍵指令用`this`犯規給當前元素角JS
angular.module('botApp').directive('myEnter', function() {
return function (scope, element, attrs) {
element.bind("keydown keypress", function (event) {
if(event.which === 13) {
scope.$apply(function(){
scope.$eval(attrs.myEnter);
});
event.preventDefault();
}
});
};
});
但是當我嘗試此一輸入元件(至極是NG-內部重複)
<input id="inp-test_text" class="default-input inp-loading" type="text"
name="test_text" ng-model="app.test_text"
my-enter="inputEnter(this)">
和JS我有:
$scope.inputEnter = function(currentInput) {
console.log(currentInput);
}
我得到這個作爲一個答案:
因此,除了當前的輸入信息,我得到了everthing。所以我如何獲得我按下的輸入元素? ($事件,$元件不作爲參數工作)
它的工作原理!非常感謝你!! –
對不起,我忘了! –
在引擎蓋下,['scope。$ eval'](https://docs.angularjs.org/api/ng/type/$rootScope.Scope#$eval)使用'$ parse'服務。有關更多信息,請參閱[AngularJS'$ parse'服務API參考](https://docs.angularjs.org/api/ng/service/$parse)。 – georgeawg