0
我有一個指令,模型沒有像我想的那樣更新。這裏是我的html:角度模型沒有更新 - Angular.js
<div class="text-area-container">
<textarea ng-model="chatText" ng-keyup="updateCount(chatText)"></textarea>
</div>
<input ng-disabled="disableCommentButton()" value="Comment" ng-click="addMessage(chatText)"/>
正如你可以看到我有連接到<textarea>
一個ng-model
。我不知道這是否會影響任何內容,但我還附加了一個ng-keyup
,該模型需要模型並查看其中包含多少個字符。最後一塊是我有一個ng-disable
對輸入進行評估的功能。這裏是我的我的指令的link
功能:
link: function(scope) {
scope.chatText = '';
scope.countRemaining = 500;
scope.updateCount = function(chatText) {
scope.chatText = chatText;
scope.countRemaining = scope.maxChatCount - chatText.length;
};
scope.disableCommentButton = function() {
return _.isUndefined(scope.encounter) || _.isEmpty(scope.chatText);
};
}
的問題是,我scope.chatText
在disableCommentButton
方法總是不確定的。我認爲通過將模型附加到html
中的元素上,我可以在範圍上訪問它。我在這裏錯過了什麼?
爲什麼工作? 'scope.encounter'正在工作,但'scope.chatText'不起作用。我不知道在文件前面定義的'scope.chatText'是否與它有任何關係。 – jhamm
其範圍在您的函數聲明時是一個全局變量,它指的是過時的範圍。在函數內引用這個指的是新的作用域對象。 – Jason
因此,範圍更改?範圍何時會過期? – jhamm