admin管理员组

文章数量:1434924

I need to extend default values with options in angular way:

var defaultOptions = {
      a: 'a'
    },
    options = {
      b: 'b'
    };
var result = $.extend({}, defaultOptions, options);

Please notice, that result is a new object, because I want to preserve both of the original objects defaultOptions and options.

I'm new in Angular, could you please help me to do the same result with angular in the most elegant way?

EDIT:

I have already found angular.extend() but I can't figure out a way how to preserve defaultOptions and options.

I know that I can do it this way:

var result = angular.extend({}, defaultOptions);
angular.extend(result, options);

But it doesn't look very elegant.

I need to extend default values with options in angular way:

var defaultOptions = {
      a: 'a'
    },
    options = {
      b: 'b'
    };
var result = $.extend({}, defaultOptions, options);

Please notice, that result is a new object, because I want to preserve both of the original objects defaultOptions and options.

I'm new in Angular, could you please help me to do the same result with angular in the most elegant way?

EDIT:

I have already found angular.extend() but I can't figure out a way how to preserve defaultOptions and options.

I know that I can do it this way:

var result = angular.extend({}, defaultOptions);
angular.extend(result, options);

But it doesn't look very elegant.

Share Improve this question edited Sep 15, 2014 at 7:23 Warlock asked Sep 15, 2014 at 7:12 WarlockWarlock 7,48110 gold badges56 silver badges75 bronze badges 2
  • @Satpal I want to preserve both of the original objects, defaultOptions and options. – Warlock Commented Sep 15, 2014 at 7:16
  • 1 @Satpal I need to do the same with Angular, not jQuery. – Warlock Commented Sep 15, 2014 at 7:18
Add a ment  | 

3 Answers 3

Reset to default 5

You need to use angular.extend

Extends the destination object dst by copying all of the properties from the src object(s) to dst. You can specify multiple src objects.

Usage

var result = angular.extend({}, defaultOptions, options)

Angular provides an extend function.

var result = angular.extend({},defaultOptions, options)

you can use angular copy

var result = angular.copy(defaultOptions );

本文标签: javascriptHow to extend default options with AngularStack Overflow