Angular 7 SyntaxError:预期表达式,get'&书信电报;在生产中,从根目录更改时

Angular 7 SyntaxError:预期表达式,get'&书信电报;在生产中,从根目录更改时,angular,angular7,Angular,Angular7,每当我通过ngbuild--prod--base href/v2/将basehref更改为“/v2/”(或“/”以外的任何其他值),我都会收到以下错误: Angular 7 SyntaxError:应为表达式,得到“这是一个过度杀伤力: ng build --aot --prod 由于prod始终执行aot,因此不需要参数,请使用: ng build --prod --base-href 资料来源: 也要使用而不是 然后,为了确保资产不会丢失,我添加了一个文件夹src/app/v2/asse

每当我通过ng
build--prod--base href/v2/
将basehref更改为“/v2/”(或“/”以外的任何其他值),我都会收到以下错误:

Angular 7 SyntaxError:应为表达式,得到“这是一个过度杀伤力:

ng build --aot --prod
由于prod始终执行aot,因此不需要参数,请使用:

ng build --prod --base-href
资料来源:

也要使用而不是

然后,为了确保资产不会丢失,我添加了一个文件夹src/app/v2/assets/images,并更新了css以引用新路径和angular.json

"assets": ["src/favicon.ico","src/v2/assets"]

我也注意到这种从v6->v7迁移的行为。 如果您正在使用路由,请尝试使用通配符路由(**),如下所示

在v6中,这也可以工作,但在v7中则不行

{ path: '**', redirectTo: 'comp1', pathMatch: 'full'}
长话短说,如果您在路由路径的末尾添加此选项,它应该可以工作

{ path: '**', redirectTo: '/', pathMatch: 'full'}

你能添加更多的细节比如stacktrace吗?另外,
--base href
应该是您的实际base href。在您的情况下,
/v2/
在哪里可以找到日志/stacktrace?我更新了tp,添加了准确的行。你真的解决了这个问题吗?请选择最佳答案它在ng服务开发环境中工作
ng build--prod--base href
这不会改变结果。我的猜测是,它将在ng-service中失败,而不是错误消失,但是所有资产,包括css、main*.js、runtime*.js,在其位置上都没有/v2/main*.js是的,我也有同样的问题,我添加了一个文件夹src/app/v2/assets/images,并更新了css以引用新路径和angular.json“assets”:[“src/favicon.ico”,“src/v2/assets”]
{ path: '**', redirectTo: '/', pathMatch: 'full'}