一键生成Vue.js + Web API前后端集成项目

前言

默认情况下,Visual Studio提供了“基于Vue.js Web 应用程序”项目模板,可以生成Vue.js前端项目。

你需要另外创建Web API项目,调试时需要同时启动2个项目,然后还要解决前后端集成带来的问题,比如跨域访问。

e7de4a3f6d9da8ab45eb2cdbbc997bba.png

如果,能将前后端集成到一个项目就好了!

项目模板

利用“Vue JS 3.0 with .NET 5 Web API”项目模板,我们很容易创建Vue.js+Web API前后端集成项目。

首先,安装“Vue JS 3.0 with .NET 5 Web API”扩展:

c457b0fd8ad42f6a1f3f7874d6a160b6.png

安装成功后,在创建新项目窗口可以可以看到,多了“Vue JS 3.0 with .NET 5”项目模板:

39a3336ec53e8571cfc5ed2f9f1843f8.png

项目结构

创建新项目,项目结构如下:

0b8b23024d98ef966dd303b64b24221c.png

ClientApp目录下放置的就是Vue.js客户端代码,其他内容和普通WebAPI项目相同。

运行项目

无需配置,你可以直接运行它,它会自动运行npm install安装完所有npm包:

154fb3524dc9eed56d2040be30d6e70c.png

如果应用程序启动正常,将显示前端页面,访问FetchData页面,可以看到调用的是相同端口下的后端API:

fae58159cab0137ea20d49dded137f12.png

发布项目

注意,模板代码有错误,设置的configuration.RootPath不对。

发布前需要修改Startup.cs,代码如下:

public Startup(IConfiguration configuration, IWebHostEnvironment env)
{
    Configuration = configuration;
    CurrentEnvironment = env;
}

public IConfiguration Configuration { get; }
private IWebHostEnvironment CurrentEnvironment { get; set; }

// This method gets called by the runtime. Use this method to add services to the container.
public void ConfigureServices(IServiceCollection services)
{
    services.AddControllers();
    services.AddSpaStaticFiles(configuration =>
    {
        if (CurrentEnvironment.IsDevelopment())
        {
            configuration.RootPath = "ClientApp";
        }
        else
        {
            configuration.RootPath = "ClientApp/dist";
        }
    });
}

执行发布操作,它会自动执行npm run build,将前端代码编译输出到ClientApp/dist目录下,发布目录结构如下:

bc31e2c9bb0439db5a8c315e39700db4.png

运行程序,访问FetchData页面,可以看到调用的还是相同端口下的后端API:

be655ece6f2bb1f2f50fd585cbe12d18.png

结论

使用“Vue JS 3.0 with .NET 5 Web API”项目模板,再也不怕怎么创建前后端集成项目了!

如果你觉得这篇文章对你有所启发,请关注我的个人公众号”My IO“

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值