В этом случае ng-init
приведет к неправильному поведению, если объект user
загружен из API
служебного вызова, директива ng-init
срабатывает до этого.Так что значение dnameform
всегда будет undefined
.
Скорее, я считаю, что вы должны напрямую использовать user.user_displayname
, как в ng-model
, не нужно создавать новую переменную ng-model
.
<input ng-model="user.user_displayname" type="text">
И где бы вам ни понадобилось значение, вы можете напрямуюиспользуйте $scope.user.user_displayname
ИЛИ
Вы можете назначить переменную dnameform
из контроллера, когда завершится вызов службы API пользователя.Тогда вы можете использовать dnameform
как в ng-model
в поле ввода без ng-init
.
apiService.getUser().then(function(res){
$scope.user = res.data
$scope.dnameform = user.user_displayname;
})