• 公司缺人自己搞了vue又搞koa,熬夜把架子搭起来


            如果有一天,人手紧缺,自己搞了前端还要搞服务端,今天我们把这个项目架子搭起来,让前端同学也可以轻松全栈开火。

            技多不压身,活儿多了可压身啊

     

    目录

    一、上午写VUE 

    1、 新建一个我们的伟大项目文件夹

    2、用vscode打开

    3、先检查一下npm源

     4、安装心爱的vue cli 脚手架       

    5、创建一个vue项目吧

    6、启动vue项目

    二、下午写KOA

    1、用vscode再打开一个命令窗口

     2、安装koa脚手架

    3、安装服务端项目

    三、 晚上熬夜自己和自己联调

    1、先看一下启动

    2、vue发送一个请求 

    3、koa服务端添加接口

    4、前端代理设置

    5、服务端跨域设置

    6、把两端都重启一下,准备吃油条


    一、上午写VUE 

    1、 新建一个我们的伟大项目文件夹

            这个项目是准备做出来早餐卖油条的,所以新建一个youtiao-pc的文件夹吧

            

    2、用vscode打开

            打开我心爱的vscode,用vscode打开这个youtiao-pc

            

    3、先检查一下npm源

            推荐淘宝源,比较快

     4、安装心爱的vue cli 脚手架       

             执行 npm install -g @vue/cli

    5、创建一个vue项目

            执行 vue create youtiao-qianduan  这个vue项目是用来自己上午写前端vue组件的,创建完了看一眼自己心爱的vscode,是不是感觉特别熟悉。

    6、启动vue项目

            执行cd youtiao-qianduan

            再执行npm run serve 

            一切都跟vue项目一样,启动起来以后,公司开发就剩自己了,以后上午写vue

    二、下午写KOA

    1、用vscode再打开一个命令窗口

            再打开一个命令窗口,文件路径随机又切换到了youtiao-pc

     

     2、安装koa脚手架

             执行  npm install koa-generator -g

    3、安装服务端项目

            执行 koa youtiao-houduan

            成功后,提示需要安装依赖 ,再次执行 cd youtiao-houduan

            安装依赖  npm install

            成功后,就可以启动了

            执行npm run dev

            到这里,2个基本的架子就安装好了。 以后下午就可以安心的写koa的服务单接口了

            

             

    三、 晚上熬夜自己和自己联调

    1、先看一下启动

            vue通过localhost:8080查看页面,注意本文中端口是8080,

            

            koa通过 localhost:3000启动页面,注意这里的端口是3000

    2、vue发送一个请求 

    本文用一下axios吧,安装axios, 执行npm install axios

    然后打开vue项目,也就是我们的youtiao-qianduan项目,打开HelloWorld.vue文件,引入axios.。并发送一个接口请求,请求一下明天早上可以卖多少油条吧

    通过这里就知道了, 服务端要有一个对应的 /youtiao/list 的接口

    3、koa服务端添加接口

            app.js添加一条油条早餐的路由引入,之前脚手架搭建的文件中有对应的内容,改一改就可以

    1. var youtiao = require('./routes/youtiao');
    2. app.use(youtiao.routes(), youtiao.allowedMethods());

            对应routes文件夹下添加youtiao.js

    1. var router = require('koa-router')();
    2. // 使外部路由接口可以链式调佣
    3. router.prefix('/youtiao');
    4. router.get('/list', function *(next) {
    5. this.body = {
    6. code: 200,
    7. data: [
    8. {name: "油条", count: "200根"},
    9. {name: "豆浆", count: "200碗"},
    10. {name: "豆腐脑", count: "1000根"},
    11. ]
    12. };
    13. });
    14. module.exports = router;

             这样,给前端提供的接口就是 /youtiao/list 了

    4、前端代理设置

            我们目前启动了2个项目,一个端口是8080,一个端口是3000,所以处于跨域状态,平时都是服务端帮我们解决跨域问题,今天我们自己来搞一搞

            再次打开前端youtiao-qianduan项目的vue.config.js文件,添加接口调用代理配置

    1. const { defineConfig } = require('@vue/cli-service')
    2. module.exports = defineConfig({
    3. transpileDependencies: true,
    4. publicPath: './',
    5. lintOnSave: false,
    6. devServer: {
    7. host: '0.0.0.0',
    8. port: 8080,
    9. // 注意,本文服务端端口号是3000
    10. proxy: 'http://localhost:3000'
    11. }
    12. })

    5、服务端跨域设置

            平时都是服务端同学帮我们设置,今天我们自己来设置一下,体会一下这种满足感吧

            打开youtiao-houduan 项目下的app.js

            添加以下代码:

    1. // 引入允许跨域包
    2. const cors = require('koa2-cors');
    3. // 服务端设置允许跨域
    4. app.use(cors({
    5. // 允许的域
    6. origin: function(ctx) {
    7. return ctx.header.origin
    8. },
    9. // 这些HTTP请求类型熟不熟
    10. allowMethods: [ 'GET', 'POST', 'PUT', 'DELETE', 'OPTIONS' ],
    11. // 跨域合法性设置
    12. credentials: true,
    13. }));

    6、把两端都重启一下,准备吃油条

            启动vue项目,刚刚是在created这个生命周期发送的请求,所以刷新一下前端工程就可以

  • 相关阅读:
    验证码 | 可视化一键管控各场景下的风险数据
    js原生获取URL 地址中 ? 后面的参数
    1.(5)数据结构之链表的插入和删除结点(有图有程序有注释)
    VS2015 设置工程目录不保存 .sdf或.db 文件、 Ipch 文件夹
    Kafka消费者使用案例
    Python编程 基础数据类型
    使用QTableView实现九九乘法表
    视频 | 生信Linux - 快说梳理 Linux 处理文件
    gdb调试程序教程
    LeetCode:2304. 网格中的最小路径代价(C++)
  • 原文地址:https://blog.csdn.net/xingyu_qie/article/details/127740071