如何在asp.netcore-spa应用程序上禁用服务器端呈现?

Has*_*san 7 asp.net reactjs asp.net-core

我正在使用aspnetcore-spa react-redux样板构建我的应用程序(可以在http://blog.stevensanderson.com/2016/05/02/angular2-react-knockout-apps-on-aspnet-core/上看到)

然而,服务器端渲染需要花费很多时间(约30秒),我想禁用它.你能告诉我如何在不破坏代码的情况下禁用服务器端渲染吗?

Eri*_*ase 21

该模板将asp-prerender-module标签助手添加到<div id="react-app"...>标签中Home\Index.cshtml.如果删除该标记帮助程序,则将禁用服务器端呈现.

标签助手导入/Views/_ViewImports.cshtml:

@addTagHelper "*, Microsoft.AspNetCore.SpaServices"

您可以在运行应用程序之前从命令行进行捆绑...

> webpack --config webpack.config.vendor.js
> webpack
Run Code Online (Sandbox Code Playgroud)

史蒂夫桑德森在悉尼NDC 发表了演讲.

aspnet-prerender-module标签助手是的一部分SpaServices,这是由自耕农产生的所有项目的基础aspnetcore-spa模板.因此,这是你将如何启用/任何这些模板,其中包括禁止预渲染Angular 2,Aurelia,Knockout,和React (with Redux).这同样适用于使用Nodeaspnet-prerendering和前面提到的标记帮助程序创建的任何自定义项目或模板.


Rom*_*son 7

对于Angular 2项目,我通过asp-prerender-module<app>Index.schtml中的tag中删除属性来解决这个问题.