2016-07-15 1 views
1

Я пытаюсь связать свое приложение с системным конструктором. Это «основное» приложение, в котором есть угловое2. Затем остальные компоненты загружаются в ядро. В настоящий момент Iam связывает мое ядро, которое работает, но остальные компоненты получают 404, потому что они ищут старые пути углового2.SystemJS Builder, Bundle без Angular2 для Lazyloading

Я хочу, чтобы компоненты были в комплекте, но без углового2 компоненты затем используют один в моем ядре. Я использую buildStatic для этого? Я только компилирую файлы ts в js.

Некоторые сниппеты, что я пытался:

Строительство ядро, которое работает:

gulp.task('bundle:js', function() { 
    var builder = new SystemBuilder('dist', './src/systemjs.config.js'); 
    return builder.buildStatic('app', 'dist/app.js'); 
}); 

В моей index.html я загрузке тогда app.js файл. Сейчас около 2 МБ.

Затем лениво загрузится компонент ищет: https://IP/@angular/router-deprecated, что приводит к 404.

Теперь к «жесткой» части:

gulp.task('build:static', function() { 
    var builder = new SystemBuilder('', './dist/systemjs.config.js'); 
    builder.buildStatic('dist/start.component.js', 'dist/start.component.static.js', { 
    defaultExtension: 'js', 
    globalName: 'test', 
    globalDeps: { 
    '@angular': '@angular' 
    } 
}); 
}); 

После этого я получаю файл JS, который составляет около 1 , 1 Мб. Итак, я думаю, что в нем нет углового2?

Если теперь я пытаюсь запустить мое приложение он говорит мне:

EXCEPTION: Error: Uncaught (in promise): No Directive annotation found on StartComponent 

У меня есть директивы в моей StartComponent. В чем моя ошибка? Возможно ли это, как я это делаю?

Спасибо!

+0

Используемый builder.bundle(), тогда он сработал. –

ответ

0

Мне нужно было использовать «system.bundle()», чтобы получить эту работу.

+1

привет, @ Мамас, не могли бы вы объяснить немного больше? Я столкнулся с подобной проблемой, и я не уверен, как ее исправить. Почему build.bundle() исправляет вашу проблему? У меня также есть вопрос в stackoverflow http://stackoverflow.com/questions/38944257/create-multiple-bundles-with-systemjs-builder-for-an-angular2-application – David