Не могу собрать пример Angular 4 с Webpack

Я недавно установил Angular 4 (RC2) и скопировал файлы из простого примера Quickstart. Но когда я пытаюсь построить проект с помощью Webpack, я получаю сообщения об ошибках, которые не могут быть решены:

WARNING in ~/@angular/core/@angular/core.es5.js
6857:19-40 Critical dependency: the request of a dependency is an expression

WARNING in ~/@angular/core/@angular/core.es5.js
6883:19-106 Critical dependency: the request of a dependency is an expression

ERROR in ~/@angular/core/@angular/core.es5.js
Module not found: Error: Can't resolve 'rxjs/Subject' in 'node_modules/@angular/core/@angular'
 @ ~/@angular/core/@angular/core.es5.js 26:0-39
 @ ./app/app.module.ts
 @ ./main.ts

ERROR in ~/@angular/core/@angular/core.es5.js
Module not found: Error: Can't resolve 'rxjs/observable/merge' in 'node_modules/@angular/core/@angular'
 @ ~/@angular/core/@angular/core.es5.js 23:0-46
 @ ./app/app.module.ts
 @ ./main.ts

ERROR in ~/@angular/core/@angular/core.es5.js
Module not found: Error: Can't resolve 'rxjs/operator/share' in 'node_modules/@angular/core/@angular'
 @ ~/@angular/core/@angular/core.es5.js 24:0-44
 @ ./app/app.module.ts
 @ ./main.ts

ERROR in ~/@angular/core/@angular/core.es5.js
Module not found: Error: Can't resolve 'rxjs/symbol/observable' in 'node_modules/@angular/core/@angular'
 @ ~/@angular/core/@angular/core.es5.js 25:0-54
 @ ./app/app.module.ts
 @ ./main.ts

ERROR in ~/@angular/core/@angular/core.es5.js
Module not found: Error: Can't resolve 'rxjs/Observable' in 'node_modules/@angular/core/@angular'
 @ ~/@angular/core/@angular/core.es5.js 22:0-45
 @ ./app/app.module.ts
 @ ./main.ts

Я установил Rxjs 5.0.1, которая, как мне кажется, является версией, которую ожидает Angular. Я не могу думать ни о чем другом, чтобы сделать.

2 ответа

new ContextReplacementPlugin( /angular(\\|\/)core(\\|\/)@angular/, path.resolve(__dirname, '../src') ) У меня работает для webpack в webpack.common.js

Работать без проблем в этой конфигурации:

new webpack.ContextReplacementPlugin(
  /angular(\\|\/)core(\\|\/)@angular/,/angular(\\|\/)core(\\|\/)(esm(\\|\/)src|src)(\\|\/)linker/,
  helpers.root('../src'), 
  {} 
),

убедитесь, что на файле helpers.root есть две точки, а не одна. ('../Src')

Другие вопросы по тегам