diff --git a/packages/schematics/angular/ssr/index.ts b/packages/schematics/angular/ssr/index.ts index 6e27eab47cd5..db2109dd0593 100644 --- a/packages/schematics/angular/ssr/index.ts +++ b/packages/schematics/angular/ssr/index.ts @@ -125,6 +125,7 @@ function addScriptsRule({ project }: SSROptions, isUsingApplicationBuilder: bool const { base, server } = await getApplicationBuilderOutputPaths(host, project); pkg.scripts ??= {}; pkg.scripts[`serve:ssr:${project}`] = `node ${join(base, server)}/server.mjs`; + pkg.scripts[`watch:ssr:${project}`] = `node --watch ${join(base, server)}/server.mjs`; } else { const serverDist = await getLegacyOutputPaths(host, project, 'server'); pkg.scripts = { @@ -376,13 +377,13 @@ const ssrSchematic: RuleFactory = createProjectSchematic( }), ...(usingApplicationBuilder ? [ - updateApplicationBuilderWorkspaceConfigRule(sourceRoot, options, context), - updateApplicationBuilderTsConfigRule(options), - ] + updateApplicationBuilderWorkspaceConfigRule(sourceRoot, options, context), + updateApplicationBuilderTsConfigRule(options), + ] : [ - updateWebpackBuilderServerTsConfigRule(options), - updateWebpackBuilderWorkspaceConfigRule(sourceRoot, options), - ]), + updateWebpackBuilderServerTsConfigRule(options), + updateWebpackBuilderWorkspaceConfigRule(sourceRoot, options), + ]), addServerFile(sourceRoot, options, isStandalone), addScriptsRule(options, usingApplicationBuilder), addDependencies(options, usingApplicationBuilder), diff --git a/packages/schematics/angular/ssr/index_spec.ts b/packages/schematics/angular/ssr/index_spec.ts index 9578558d761c..cdae42fed5b2 100644 --- a/packages/schematics/angular/ssr/index_spec.ts +++ b/packages/schematics/angular/ssr/index_spec.ts @@ -124,6 +124,7 @@ describe('SSR Schematic', () => { const { scripts } = tree.readJson('/package.json') as { scripts: Record }; expect(scripts['serve:ssr:test-app']).toBe(`node dist/test-app/server/server.mjs`); + expect(scripts['watch:ssr:test-app']).toBe(`node --watch dist/test-app/server/server.mjs`); }); it('works when using a custom "outputPath.browser" and "outputPath.server" values', async () => {