Angular 2?
AngularJS 1には、「マージ」および「拡張」機能があります。 https://docs.angularjs.org/api/ng/function/angular.mergehttps:// docs .angularjs.org/api/ng/function/angular.extend
ただし、Angular 2!
アイデアはありますか?
ありがとう!
Angularで行う方法は、javascriptの Object.assign() を使用することです。
_const obj = Object.assign({}, object1, object2);
_
ただし、IEおよびAndroidではまだサポートされていないことに注意してください。
クロスブラウザサポートには3つのオプションがあります。
1。 Angular CLI
Angular CLIで最新のAngularバージョンを使用している場合は、_/src/polyfills.ts
_を開き、次の行のコメントを解除します。
_// import 'core-js/es6/object';
_
これにより、Object.assign()
のクロスブラウザーサポートを提供するオブジェクトポリフィルが有効になります。
2。 TypeScript
TypeScriptバージョン2.1以降がインストールされている場合は、 Object Spread を使用できます。
_const obj = {...object1, ...object2};
_
3。 Javascript
Angular CLIを使用せずにObject.assign()を使用したい場合は、ポリフィルをプロジェクトにインポートできます。たくさんありますが、ここにいくつかあります:
core-js npm package Angular CLIがポリフィルに使用する:
_npm install core-js --save
_
単純なポリフィル TypeScriptのjavascriptへの変換から:
_Object.assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
_
そして最後に、 MDN polyfill 。
アンダースコア/ lodashライブラリを使用できます。 https://lodash.com/docs#merge
Angle2/4スタックに含めるだけです。
この質問では、次の方法について説明します。 lodashをangle2 + TypeScriptアプリケーションにインポートする