我正在尝试从值中填充ng-model
,但在保存之前不希望它更新。为此,我有以下代码;
控制器;
var SettingsController = function (roleService) {
var ctrl = this;
ctrl.rename = function(name) {
ctrl.account.name = name;
};
roleService.role.settings().then(function (result) {
ctrl.account = result.data.account;
}, function (result) {
console.log(result);
});
};
一个简单的控制器,它从服务获取当前设置并将其设置为ctrl。
当调用rename(name)
时,我更新帐户的名称(现在它只是更新范围,但很快它也会更新后端)
要重命名您的帐户,我有以下代码
<input type="text" data-ng-model="account.name" />
<button type="button" data-ng-click="ctrl.rename(account.name)">
Rename
</button>
我使用controler ctrl
== SettingsController
现在我使用data-ng-model="account.name"
来更新名称。这样做,所以我只在调用按钮时更新名称。唯一的问题是我如何获得输入的ctrl.account.name
值,而不是冒充即可。
我可以使用$scope
将$scope.account
添加到我的控制器,但这对我来说似乎有些过分。有没有办法从其他值或某种类型复制/填充ng-model
?
要到达控制器,我使用angular routerProvider;
$routeProvider
.when('/settings/', {
templateUrl: '/user/template/settings/',
controller: 'SettingsController',
controllerAs: 'ctrl'
});