Angular Несколько точек входа с AOT

У меня есть приложение angular, которое скомпилировано с помощью webpack и использует несколько точек входа:

    entry: {
        'app1': helpers.root('src', 'app1', 'main.ts'),
        'app2': helpers.root('src', 'app2', 'main.ts')
    }

Я использую CommonsChunkPlugin для объединения файлов поставщиков между этими приложениями, что отлично работает. Тем не менее, теперь я хотел бы также использовать компиляцию AOT.

Использование @ngtools/webpack Я могу только аотизировать одно приложение. Есть ли способ сделать это для обоих приложений?

    new ngToolsWebpack.AngularCompilerPlugin({
        tsConfigPath: helpers.root('tsconfig.json'),
        entryModule: helpers.root('src', '[name]', 'app', 'app.module#AppModule'),
    }),

Использование [name] (аналогично webpack output) не работает (см. выше). Есть ли способ достичь того же самого по-другому?

Ответ 1

Если вы используете webpack 4, вы не должны использовать плагин commonsChunk, вы должны использовать Optimize.splitChunks. Работает нормально с AOT.

Ответ 2

Не указывайте entryModule.

...
            plugins: [
            new AngularCompilerPlugin({
                tsConfigPath: ./tsconfig-aot.json,
            }),
    ]

...