0

これが私のangularjsアプリのhtmlコードです

<input type="text" class="input-xlarge" id="user_name" ng-model="myModel.text1" 
   name="user_name" rel="popover" data-content="Enter your first and last name."
   data-original-title="Full Name">

そして、ここにコンストラクターコードがあります

    function MyCtrl2($scope) {
         var initial = {text1: 'initial value'};
         var ini = {text2: 'initialvalue'};
         $scope.myModel = angular.copy(initial);
         $scope.myModel = angular.copy(ini);
}

MyCtrl2.$inject = ['$scope'];

1 つのテキスト ボックスにのみ既定値が設定されusr_emailていuser_name ます。

4

1 に答える 1

0

angular.copyは、2 回目に使用すると (init をコピーするときに) $scope.myModel をオーバーライドするため、使用できません。代わりにangular.extendを使用して、ini と initial のすべてのプロパティをモデルにコピーします。

function MyCtrl2($scope) {
     var initial = {text1: 'initial value'};
     var ini = {text2: 'initialvalue'};
     $scope.myModel = {};
     angular.extend($scope.myModel, initial, ini);
}
于 2013-02-14T07:29:04.870 に答える