Javascript 在角度服务中添加更多参数
编辑:Javascript 在角度服务中添加更多参数,javascript,angularjs,cordova,ionic-framework,Javascript,Angularjs,Cordova,Ionic Framework,编辑:angular.extend和Object.assign这两种方法都很好,我应该使用哪一种方法 我试图向angularjs服务变量添加更多值,但它覆盖了以前的值。下面是一个示例代码 var testModule = angular.module('testmodule', []) .controller('abc', function ($scope, mser) { mser.aa = {a:5, b:2}; mser.aa = {c:5, d:2}; $scope
angular.extend
和Object.assign
这两种方法都很好,我应该使用哪一种方法
我试图向angularjs服务变量添加更多值,但它覆盖了以前的值。下面是一个示例代码
var testModule = angular.module('testmodule', [])
.controller('abc', function ($scope, mser)
{
mser.aa = {a:5, b:2};
mser.aa = {c:5, d:2};
$scope.inps = mser.aa.a
})
.service('mser', function() {
var aa = {}
return aa
});
现在正如你所知道的,在mser.aa={c:5,d:2}代码>我将获得mser.aa.a
作为未定义的
。
如何避免这种情况并插入所有值,而不是指定第二次重试
角度合并(mser.aa,{c:5,d:2})
而不是分配第二次尝试
角度合并(mser.aa,{c:5,d:2})
你可以用这样的控制器
.controller('abc', function ($scope, mser)
{
mser.aa = {a:5, b:2};
mser.aa.c =5;
mser.aa.d =2;
$scope.inps = mser.aa.a
})
你可以用这样的控制器
.controller('abc', function ($scope, mser)
{
mser.aa = {a:5, b:2};
mser.aa.c =5;
mser.aa.d =2;
$scope.inps = mser.aa.a
})
您可以使用angulr.extend,如下所示:
mser.aa = {a:5, b:2};
angular.extend(mser.aa, {c:6, d:7});
这将使用指定的值扩展当前对象,而不覆盖该值。您可以使用angulr.extend,如下所示:
mser.aa = {a:5, b:2};
angular.extend(mser.aa, {c:6, d:7});
这将使用指定的值扩展当前对象,而不会覆盖。您正在用{c:5,d:2}覆盖“mser.aa”的值。如果要扩展该对象,请执行以下操作:
mser.aa = Object.assign(mser.aa, {c:5, d:2});
如果您想利用angular
方法而不是纯javascriptObject
方法,您也可以这样做:
angular.extend(mser.aa, {c:6, d:7});
您正在用{c:5,d:2}覆盖“mser.aa”的值。如果要扩展该对象,请执行以下操作:
mser.aa = Object.assign(mser.aa, {c:5, d:2});
如果您想利用angular
方法而不是纯javascriptObject
方法,您也可以这样做:
angular.extend(mser.aa, {c:6, d:7});
mser.aa
是一个常规JavaScript属性-如果将对象分配给该属性,它将覆盖现有属性。
您要做的是修改现有对象。
就这样,
mser.aa.a = 5;
mser.aa.b = 2;
mser.aa.c = 5;
mser.aa.d = 2;
mser.aa
是一个常规JavaScript属性-如果将对象分配给该属性,它将覆盖现有属性。
您要做的是修改现有对象。
就这样,
mser.aa.a = 5;
mser.aa.b = 2;
mser.aa.c = 5;
mser.aa.d = 2;
我应该使用angular.extend还是Object.assign?我正在开发一个ionic应用程序,两者的作用相同,即将自己的可枚举属性从src对象复制到目标。您可以使用任何一个,但是如果您在src对象中有嵌套对象,并且想要深度复制,请使用angular.merge
<代码>分配
仅复制顶级键引用,不复制深度副本。我应该使用angular.extend还是Object.assign?我正在开发一个ionic应用程序,两者的作用相同,即将自己的可枚举属性从src对象复制到目标。您可以使用任何一个,但是如果您在src对象中有嵌套对象,并且想要深度复制,请使用angular.merge
<代码>分配仅复制顶级键引用,不复制深度副本。我应该使用angular.extend还是Object.assign?我正在开发一个ionic应用程序如果你想用angular的方式来做,那么试试这个。我应该使用angular.extend还是Object.assign?我正在开发一个离子应用程序,如果你想用角度的方式来做,那么试试这个。