大家好,我是半夏,一个刚刚开始写文的沙雕程序员.如果喜欢我的文章,可以关注 点赞 加我微信:frontendpicker,一起学习交流前端,成为更优秀的工程师~关注公众号:搞前端的半夏,了解更多前端知识!点我探索新世界!

2020年9月份,Vue3正式发布,到现在已经一年多了,整个Vue3的生态已经很完善了,今年的2月份呢,Vue3已经成为了Vue的默认版本了,也就是说我们使用npm install vue 将默认安装 Vue 3。所以说,Vue3你会用了吗?从今天开始,我会开设一个新的系列-Vue3+Express实战

在本课程中,我会带着大家使用Vue.js + Express + MySQL来构建一个CRUD全栈项目。后端服务器使用 Express 搭建 REST FUl风格的API接口,前端将使用Element-Plus 来搭建页面。同时使用axios来访问接口。

本节课程我们先开始进行前后端开发环境的搭建。首先是Vue项目的搭建。

Vue-前台项目环境搭建

依赖

  • vue3

  • vue-router 4

  • axios

  • element-plus

初始化项目

执行vue create

vue create Vue-CRUD

PS:执行vue命令,需要先安装Vue脚手架。

npm install -g @vue/cli
# OR
yarn global add @vue/cli

选择依赖

执行完命令之后,我们通过上下键选择自定义=》Manually select features

回车键,进入=》自定义选择依赖项目。这里通过空格选中babel和Router,其他的我们不选择。

然后回车,回到上个界面,我们一直回车,直到开始安装依赖!

安装element-plus和Axios

执行下面命令,安装依赖

cd vue-crud &  yarn add element-plus axios

安装完依赖,在VS CODE编辑器打开项目。

在 main.js中加入下面的代码

import ElementPlus from 'element-plus'
import 'element-plus/dist/index.css' createApp(App).use(ElementPlus).use(router).mount('#app')

至此我们的前端项目环境搭建完毕!

我们执行下面的命令,运行项目。完美!!!

yarn dev

Express-后台环境搭建

依赖

  • express
  • sequelize
  • mysql2
  • body-parser
  • cors

这里我们使用命令行来创初始化项目。

创建文件夹

mkdir express-crud

npm init

进入上一步创建的文件夹

执行

npm init -y

安装依赖

yarn add express sequelize mysql2 body-parser cors --save

测试代码

用vscode打开项目,并创建一个server.js文件

const express = require("express");
const bodyParser = require("body-parser");
const cors = require("cors");
const app = express();
var corsOptions = {
origin: "http://localhost:8081"
};
app.use(cors(corsOptions)); app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: true })); app.get("/", (req, res) => {
res.json({ message: "课程管理系统" });
});
const PORT = process.env.PORT || 8080;
app.listen(PORT, () => {
console.log(`Server is running on port ${PORT}.`);
});

这段代码我们做了啥?

  1. 导入express,body-parser,cors模块

    其中:

    • Express 用于构建 Rest api
    • body-parser帮助解析请求并创建req.body对象
    • cors用来解决跨域问题
  2. 定义一个用于测试的 GET 路由

  3. 在端口 8080 上监听请求

下面我们运行程序:

node server.js

使用 url http://localhost:8080/会出现下面的页面。

到此为止,我们成功的搭建了开发所需的环境!

下一个课程,我们进入到正式的编码环节!

【Vue3+Express实战】项目开发环境搭建的更多相关文章

  1. express+mysql+vue开发环境搭建

    最近开始做一个实验室资产管理系统,后台使用node.js的Express框架,前端使用vue,数据库使用mysql.在这里开始简单记录一下开发过程和遇到的问题. 今天要说的是express+mysql ...

  2. Hadoop项目开发环境搭建(Eclipse\MyEclipse + Maven)

    写在前面的话 可详细参考,一定得去看 HBase 开发环境搭建(Eclipse\MyEclipse + Maven) Zookeeper项目开发环境搭建(Eclipse\MyEclipse + Mav ...

  3. Hive项目开发环境搭建(Eclipse\MyEclipse + Maven)

    写在前面的话 可详细参考,一定得去看 HBase 开发环境搭建(Eclipse\MyEclipse + Maven) Zookeeper项目开发环境搭建(Eclipse\MyEclipse + Mav ...

  4. iOS项目——项目开发环境搭建

    在开发项目之前,我们需要做一些准备工作,了解iOS扩展--Objective-C开发编程规范是进行开发的必备基础,学习iOS学习--Xcode9上传项目到GitHub是我们进行版本控制和代码管理的选择 ...

  5. Zookeeper项目开发环境搭建(Eclipse\MyEclipse + Maven)

    写在前面的话 可详细参考,一定得去看 HBase 开发环境搭建(Eclipse\MyEclipse + Maven) 我这里,相信,能看此博客的朋友,想必是有一定基础的了.我前期写了大量的基础性博文. ...

  6. 从壹开始前后端分离 [ Vue2.0+.NET Core2.1] 二十一║Vue实战:开发环境搭建【详细版】

    缘起 哈喽大家好,兜兜转转终于来到了Vue实战环节,前边的 6 篇关于Vue基础文章我刚刚简单看了看,感觉写的还是不行呀,不是很系统,所以大家可能看上去比较累,还是得抽时间去润润色,修改修改语句和样式 ...

  7. 利用maven开发springMVC项目——开发环境搭建(版本错误解决)

    申明:部分内容参见别人的博客,没有任何的商业用途,只是作为自己学习使用.(大佬博客) 一.相关环境 - eclipse :eclipse-jee-oxygen-3-win32-x86_64(下载地址) ...

  8. react项目开发环境搭建

    1.环境安装,首先要安装node http://nodejs.cn/  进入nodejs下载,你是window就下在window的反之,安装下一步下一步...就好了 安装成功了试试 node -v , ...

  9. Forward团队-爬虫豆瓣top250项目-团队编程项目开发环境搭建过程

    本次结对编程和团队项目我都需要用python环境,所以环境的搭建是一样的.(本文部分内容引用自己博客:http://www.cnblogs.com/xingyunqi/p/7527411.html) ...

随机推荐

  1. 绕过CDN找到⽬标站点真实IP

    一.判断目标网站是否使用CDN 在渗透测试中,如果连真实 IP 都没有找到的话,相当于连门都没有找到.所以,如何验证目标网站是否使用了 CDN 呢? 1.多地 ping 法(一般情况下使用多地 pin ...

  2. isro

    靶机准备 将下载的压缩文件解压,打开vmx文件即可 将网络模式设置为NAT 扫描获得ip:192.168.164.185 kali:192.168.164.137 netdiscover -r 192 ...

  3. 不会真有人还不会调用Excel吧?

    哈喽,大家好!我是指北君. 大家有没有过这样的经历:开发某个项目,需要调用Excel控件去生成Excel文件.填充数据.改变格式等等,常常在测试环境中一切正常,但在生产环境却无法正常调用Excel,不 ...

  4. 深度学习训练过程中的学习率衰减策略及pytorch实现

    学习率是深度学习中的一个重要超参数,选择合适的学习率能够帮助模型更好地收敛. 本文主要介绍深度学习训练过程中的6种学习率衰减策略以及相应的Pytorch实现. 1. StepLR 按固定的训练epoc ...

  5. 从字符串某位置开始的递增串(dfs)注意for循环中下标的错误

    #include <iostream> #include <string> using namespace std; char res[50];int tag=1; void ...

  6. 『现学现忘』Docker基础 — 35、实战:自定义CentOS镜像

    目录 1.前提说明 2.编写Dockerfile文件 3.构建镜像 4.运行镜像 5.列出镜像的变更历史 1)目标:自定义镜像wokong_centos. 2)所用到的保留字指令: FROM:基础镜像 ...

  7. 在Spring的事务体系中,事务传播特性:Required和RequiresNew有何不同?

    Required 如果当前存在一个事务,则加入当前事务.如果不存在任何事务,则创建一个新的事务.总之,要至少保证在一个事务中运行.PROPAGATION_REQUIRED通常作为默认的事务传播行为.p ...

  8. 简述synchronized和java.util.concurrent.locks.Lock的异同 ?

    主要相同点:Lock能完成synchronized所实现的所有功能 主要不同点:Lock有比synchronized更精确的线程语义和更好的性能.synchronized会自动释放锁,而Lock一定要 ...

  9. CSS5:移动端页面(响应式)

    CSS5:移动端页面(响应式) 如果手机端和PC端页面差别很大,就不要写响应式,不要写@media 就直接将两个页面拆开成两个文件就可以了.关于判断是手机端你还是PC端,就交给后端来做只有一些新闻站点 ...

  10. HTML5存储方式

    由于之前在参加面试或者笔试的过程中经常会被问到HTML5存储的内容,包括它们之间的区别.特征和应用范围,所以看到一篇介绍不错的文章,把里面的个人觉得适合我的内容按照自己的理解总结如下.方便以后忘记了进 ...