Когато потребителят влезе в изгледа. Ъгловият изпраща заявка към сървъра и в отговор е име, което се състои от префикс и действително име (напр .: PREFIX_NAME). Имам 2 входа (един за префикс и второ за име). Искам да задам ng-maxlength атрибут за въвеждане на име, който ще бъде например 25-prefix.length. Опитах се да го настроя така:
ng-maxlength="{{maxLength}}"
но тя все още има първа стойност (25), а не стойност след изместване на дължината на префикса.
Отговори:
0 за отговор № 1TLDR: използвайте ng-maxlength="maxLength"
ng-maxlength
очаква израз на js, а не интерполирана стойност. Ако отворите конзолата, вероятно би трябвало да видите грешка в това неочаквано означение "{". Обикновено не се нуждаете от двойни скоби при използване ng-*
.
0 за отговор № 2
Опитайте тази
ng-maxlength="maxLength"
0 за отговор № 3
Вашият вход трябва да бъде:
<input ... ng-maxlength="maxLength"/>
Във вашия контролер, по подразбиране maxLength
, и да го промените, когато го възстановите от приложния програмен интерфейс (API):
$scope.maxLength = 25;
$http({ method: "GET", url: "/url" }).then(function(data) {
$scope.maxLength = 25 - data;
});