私のチームと私は、コード ベースを Webpack 2 にアップグレードしようとしていますが、次の 2 つのエラーで立ち往生しています。
「クラス デコレータを使用する場合、キャッチされていない Reflect-Metadata shim が必要です」 & 「未定義のプロパティ「isDefaultChangeDetectionStrategy」を読み取ることができません」
angular2-webpack-starterで作業しており、RC5 で最新であり、この更新を試みています。
このエラーは、次のコードがある polyfills.browser.ts ファイルから発生していると考えられます。
import 'core-js/es6/symbol';
import 'core-js/es6/object';
import 'core-js/es6/function';
import 'core-js/es6/parse-int';
import 'core-js/es6/parse-float';
import 'core-js/es6/number';
import 'core-js/es6/math';
import 'core-js/es6/string';
import 'core-js/es6/date';
import 'core-js/es6/array';
import 'core-js/es6/regexp';
import 'core-js/es6/map';
import 'core-js/es6/set';
import 'core-js/es6/weak-map';
import 'core-js/es6/weak-set';
import 'core-js/es6/typed';
import 'core-js/es6/reflect';
// see issue https://github.com/AngularClass/angular2-webpack-starter/issues/709
// import 'core-js/es6/promise';
import 'core-js/es7/reflect';
import 'zone.js/dist/zone';
// Typescript emit helpers polyfill
import 'ts-helpers';
if ('production' === ENV) {
// Production
} else {
// Development
Error.stackTraceLimit = Infinity;
require('zone.js/dist/long-stack-trace-zone');
}
また、module.exports 内の webpack.common.js エントリ obj は次のようになります。
module.exports = {
{...},
entry: {
'polyfills': './src/polyfills.browser.ts',
'vendor': './src/vendor.browser.ts',
'main': './src/main.browser.ts'
},
{...}
}
どんな助けでも大歓迎です!