NestJS Angular 通用不在根路径上自动加载 "index.html"
NestJS Angular Universal not loading "index.html" automatically on root path
我正在 运行使用 Angular 9 和 Ivy 在我的本地服务器上安装一个 NestJS Angular 通用应用程序。当我 运行:
时,我可以让一切正常工作
npm run serve:ssr
但是,除非我手动输入路线,否则不会加载任何内容。我认为它会自动加载“index.html”而无需输入。
localhost:8080 ----- nothing
localhost:8080/index.html ---- works
有没有办法修改代码来重写根路径?我认为这没有必要:
main.ts
import { NestFactory } from '@nestjs/core';
import { AppModule } from './app.module';
async function bootstrap() {
const app = await NestFactory.create(AppModule);
app.setGlobalPrefix('api');
await app.listen(process.env.PORT || 8080);
}
// Webpack will replace 'require' with '__webpack_require__'
// '__non_webpack_require__' is a proxy to Node 'require'
// The below code is to ensure that the server is run only when not requiring the bundle.
declare const __non_webpack_require__: NodeRequire;
const mainModule = __non_webpack_require__.main;
const moduleFilename = (mainModule && mainModule.filename) || '';
if (moduleFilename === __filename || moduleFilename.includes('iisnode')) {
bootstrap().catch(err => console.error(err));
}
或解决手头的问题...
经过几天的努力,我发现我有一个循环,方法是在 ts 文件中包含一个组件,该组件包含另一个在 ts 文件中有循环的组件。就我而言,我订阅了一些我不应该拥有的东西。我以为这是一个 IVY / NestJS 兼容性问题,但结果是我的代码。
我正在 运行使用 Angular 9 和 Ivy 在我的本地服务器上安装一个 NestJS Angular 通用应用程序。当我 运行:
时,我可以让一切正常工作npm run serve:ssr
但是,除非我手动输入路线,否则不会加载任何内容。我认为它会自动加载“index.html”而无需输入。
localhost:8080 ----- nothing
localhost:8080/index.html ---- works
有没有办法修改代码来重写根路径?我认为这没有必要:
main.ts
import { NestFactory } from '@nestjs/core';
import { AppModule } from './app.module';
async function bootstrap() {
const app = await NestFactory.create(AppModule);
app.setGlobalPrefix('api');
await app.listen(process.env.PORT || 8080);
}
// Webpack will replace 'require' with '__webpack_require__'
// '__non_webpack_require__' is a proxy to Node 'require'
// The below code is to ensure that the server is run only when not requiring the bundle.
declare const __non_webpack_require__: NodeRequire;
const mainModule = __non_webpack_require__.main;
const moduleFilename = (mainModule && mainModule.filename) || '';
if (moduleFilename === __filename || moduleFilename.includes('iisnode')) {
bootstrap().catch(err => console.error(err));
}
或解决手头的问题...
经过几天的努力,我发现我有一个循环,方法是在 ts 文件中包含一个组件,该组件包含另一个在 ts 文件中有循环的组件。就我而言,我订阅了一些我不应该拥有的东西。我以为这是一个 IVY / NestJS 兼容性问题,但结果是我的代码。