ASP.NET核心-为SPA提供不同的HTML文件? 问题:
如何在ASP.NET Core中为SPA应用程序(Vue)提供不同的HTML(条目)文件 解释 根据不同的条件,我希望提供不同的HTML页面(就像控制器为非SPA所做的那样)。该页面仍将包括Vue应用程序的入口点ASP.NET核心-为SPA提供不同的HTML文件? 问题:,html,asp.net,vue.js,asp.net-core,single-page-application,Html,Asp.net,Vue.js,Asp.net Core,Single Page Application,如何在ASP.NET Core中为SPA应用程序(Vue)提供不同的HTML(条目)文件 解释 根据不同的条件,我希望提供不同的HTML页面(就像控制器为非SPA所做的那样)。该页面仍将包括Vue应用程序的入口点,但在提供HTML之前应进行一些其他更改 我知道我必须以某种方式更改startup.cs文件,因为这样会使用app.UseStaticFiles()和app.usespaticfiles() 例子 满足条件1,base.html从client->public->base.html 条件2
,但在提供HTML之前应进行一些其他更改
我知道我必须以某种方式更改startup.cs文件,因为这样会使用app.UseStaticFiles()
和app.usespaticfiles()
例子
满足条件1,base.html
从client->public->base.html
条件2得到满足,special.html
由client->public->special.html
代码
基本HTML如下所示:
标题
很抱歉,如果未启用JavaScript,此网页无法正常工作。请启用它
继续。
startup.cs的重要部分如下所示:
services.AddSpaStaticFiles(配置=>
{
configuration.RootPath=“ClientApp/dist”;
});
// ....
app.UseStaticFiles();
app.UseSpaStaticFiles();
// ....
app.UseEndpoints(端点=>
{
endpoints.MapControllerRoute(
名称:“默认”,
模式:“{controller}/{action=Index}/{id?}”);
if(env.IsDevelopment())
{
endpoints.MapToVueCliProxy(
“{*path}”,
新SpaOptions{SourcePath=“ClientApp”},
NPMSCcript:“发球”,
正则表达式:“编译成功”);
}
//如果应用程序使用Razor页面,则添加MapRazorPages。由于端点路由包括对许多框架的支持,添加Razor页面现在是选择性加入。
endpoints.MapRazorPages();
});
// ....
app.UseSpa(spa=>
{
spa.Options.SourcePath=“ClientApp”;
});