我正在将 angular 7 应用程序迁移到 angular 9,它使用服务器端渲染(angular 通用)和 angular i18n 用于 2 种语言(法语和英语)。
在旧的 angular 7 流程中,由于我使用的是 AOT,因此我必须为生产进行 5 次构建:
然后,在server.ts我动态加载正确的服务器包
旧服务器.ts
app.engine('html', (_, options: any, callback) => {
const isFR= options.req.url.indexOf('site-fr') >= 0 ;
const {AppServerModuleNgFactory, LAZY_MODULE_MAP} = isFR ? require('./dist/server/fr/main') : require('./dist/server/en/main');
// Our index.html we'll use as our template
const template = readFileSync(join(DIST_FOLDER, 'browser', isFR ? 'fr' : 'en', 'index.html')).toString();
renderModuleFactory(AppServerModuleNgFactory, {
// Our …Run Code Online (Sandbox Code Playgroud) server-side-rendering angular-i18n angular-universal angular angular9