当前位置:首页 > 技术分析 > 正文内容

.net core集成vue(.net core+vue)

ruisui884个月前 (02-03)技术分析26

react、angular、vue 你更熟悉哪个?下边这个是vue的。

要求

需要你的计算机安装有

? .net core 2.0以上版本

? node、webpack、vue-cli、vue (npm install 默认版本即可)

? visual studio 2017/vs code

初始化.net core 项目

1. 首先打开vs 17(vs code也行)新建一个asp.net core 项目DotnetCoreWithVue

2. 选择API模板,若是想集成docker可以勾选下启用docker支持。关于docker的详细介绍可参考另一篇转载的文章使用TFS玩转Docker自动化部署。

使用vue-cli初始化vue 项目

? 若未安装node,点击下载链接:


https://nodejs.org/dist/v8.11.4/node-v8.11.4-x64.msi
,双击安装即可。

? 若未安装vue输入命令行 npm install -g vue。

? 安装vue-cli npm install -g vue-cli。Npm慢的话可以使用cnpm(淘宝npm镜像)或者yarn。

1. 打开命令行工具,这里直接使用的vscode的终端插件。

2. 用webpack 初始化vue

vue init webpack

这里我选择了使用vue路由、ESLint语法规范,另外两个测试模块暂时用不到都填n,关于使用vue webpack 模板的介绍可参考文档:

https://vuejs-templates.github.io/webpack/

参数说明

? Project name? 输入项目名称
? Project description 输入项目描述
? Author 作者
? Vue build 打包方式,回车就好了
? Install vue-router?? 选择? Y 使用 vue-router,输入 N 不使用
? Use ESLint to lint your code? 代码规范? Setup unit tests with Karma + Mocha? 单元测试
? Setup e2e tests with Nightwatch? E2E测试

3. 安装依赖

cd DotnetCoreWithVue
npm install

4. 校验项目是否初始化成功。

npm run dev,在浏览器中打开http://localhost:8080,看到如下页面代表vue项目初始化成功。

同步构建(前端+后端)

通过编辑项目文件,在项目文件编译前先执行npm命令。

1. 在vs 2017 中选中.csproj文件右键修改。

2. 在.csproj 文件中添加如下代码,即表示在构建之前先执行 npm installnpm run build


? 
? 

3. 编译查看结果,可以在输出控制台查看日志。

查看生成目录

修改webpack生成路径

在asp.net core 项目中我们习惯将静态文件放到wwwroot 目录下,现在我们只需修改下webpack 配置文件即可。

1. 修改config/index.js 文件。

2. 重新编译,查看生成文件路径。

前后端交互

1. 修改controller的第一个方法,将返回数据第一个改为:dotnet core with vue。

cd DotnetCoreWithVue
npm install
// GET api/values
[HttpGet]
public ActionResult> Get()
?{
??return new string[] { "dotnet core with vue", "value2" };
??}??

2. 修改HelloWorld.vue,添加如下代码,请求后端api,然后编译项目。这里使用的requst 为小编封装的axios,各位感兴趣的话可以直接去github 查看代码

https://github.com/WalkerLu/DotnetCoreWithVue/blob/master/DotnetCoreWithVue/src/utils/request.js

?mounted () {
?request({?
?? url: 'api/values',
? ?method: 'get'
?? }).then(response => {
? console.log(response)
? this.msg = response.data[0]
? ? })
? ? ?}

3. 重新编译项目

请求http://localhost:40051/#/ 验证代码,端口号视应用程序配置需自行修改。

总结

至此.net core 集成vue的基本操作都完成了,其中用的技术(.net core、vue、router、webpack、es6…)展开了来讲都可以出一个系列了,当然网上也不乏文档资料。故此文的的侧重点在于如何开始dotnet core with vue ?对于技术细节也没有深入探讨,如果读者有.net core 获取vue 前端方面的话题或问题欢迎大家积极留言评论,我们一起探讨学习。当然咯,重构前端也好,前后端分离也好都需要切合实际的选择最合适自己的方案。如果刚好你既需要同时编写前端和后端,且想使用VUE全家桶的同时又希望可以代码可以一键式编译的话,或许可以试试这种方式。

扫描二维码推送至手机访问。

版权声明:本文由ruisui88发布,如需转载请注明出处。

本文链接:http://www.ruisui88.com/post/898.html

分享给朋友:

“.net core集成vue(.net core+vue)” 的相关文章

Linux 最主要的发行分支

Linux 有数百个发行分支。主要的有以下四个。slackwareSlackware 是由 Patrick Volkerding 在 1992 年推出的,它是全球现存最古老的 Linux 发行版。Slackware 被设计为高度可定制和强大的,并且要求用户了解 每个元素,它的包系统是不支持依赖的。...

vue中如何在自定义组件上使用v-model和.sync

自定义事件tips推荐始终使用 kebab-case 的事件名。(v-on会将事件名自动转换为小写,避免匹配不到)changeData ×change-data √自定义组件的v-model用法:父组件定义数据源(不需要定义修改数据的方法),在子组件标签上通过v-model="data...

Acustica Audio 发布模拟Roland Jupiter 双声道合成器插件 TH2

福利: Acustica Audio 发布模拟Roland Jupiter 风格的双声道合成器插件 TH2 免费下载 意大利 Acustica Audio 公司发布布模拟Roland Jupiter 风格的双声道合成器插件 TH2 ,灵感来源于Acustica Audio的THING-8系列,它是...

vue3使用vue-router路由(路由懒加载、路由传参)

vue-router 是 vue的一个插件库1. 专门用来实现一个SPA单页面应用2 .基于vue的项目基本都会用到此库SPA的理解1) 单页Web应用(single page web application,SPA)2) 整个应用只有一个完整的页面3) 点击页面中的链接不会刷新页面, 本身也不会向...

vue开发微信小程序 - 登录组件

移动端登录功能抽象为通用组件,满足:不同移动端应用中一键登录功能复用支持多种登录:微信登录、H5、QQ登录登录组件使用//引用登录组件 import login from "../components/user/login.vue" export default { compone...