如何使用AngularJS将数据重置为Bootstrap模式中的默认值? 这就是我想要做的事情:
$scope.initial = [
{
name: 'nam_fruit',
price: 0
}];
$scope.reset = function(){
$scope.dataFruit = $scope.initial;
}
但它不起作用。字段仍然有旧数据。检查我的小提琴: http://jsfiddle.net/q69yckt1/
答案 0 :(得分:2)
您正在将数组指定为初始模型。只需删除[]
,这应该有效:
$scope.initial =
{
name: 'nam_fruit',
price: 0
};
$scope.reset = function(){
$scope.dataFruit = angular.copy($scope.initial);
}
如同devqon在评论中提到的那样,如果你只使用$scope.initial
,你还应该创建$scope.dataFruit = $scope.initial;
的副本,因为它只是一个参考副本。
This是工作小提琴。
答案 1 :(得分:0)
var vm = this;
//(like a private field)
var initial_is_editable = true;
vm.initial = [{
name: 'nam_fruit',
price: 0
},{
name: 'nam_fruit',
price: 0
}];
function reset(reset_modal_index){
if(initial_is_editable){
vm.initial[reset_modal_index].name = "default_name";
vm.initial[reset_modal_index].price= "default_price";
}
vm.dataFruit[reset_modal_index] = vm.initial[reset_modal_index];
}
如果我理解正确:我们有一组dataFruit模态,我们正在将所选数据的数据重置为初始值。