精华内容
下载资源
问答
  • springboot + vue 前后端分离项目部署及服务器配置 原文 问题1:服务器安装jdk 1.jdk下载 下载链接:jdk百度网盘下载(点击跳转) 提取码:gy61 2.在xshell 首先执行 yum install lrzsz ,安装过程中一路 ‘y’ 注:...

    springboot + vue 前后端分离项目部署及服务器配置

    原文

    流程1:服务器安装jdk

    1.jdk下载

    下载链接:jdk百度网盘下载(点击跳转)
    提取码:gy61

    2.在xshell 首先执行 yum install lrzsz ,安装过程中一路 ‘y’

    注:安装lrzsz(zmodem)
    对于CentOS系统:yum install lrzsz
    对于debian系统:apt-get install lrzsz
    安装完成后就可以使用SecureCRT的zmodem功能了。

    3.进入usr 目录 , 并创建java目录, 进入java目录

    cd /usr
    mkdir java
    cd java

    4.rz 按回车键,进入上传流程 , 上传成功后点击关闭即可

    注:这里就是zmodem的功能

    4【也可以直接使用Xftp 7来进行可视化上传文件

    在这里插入图片描述

    问题2:rz命令,上传报错

    在这里插入图片描述

    解决方法:可以直接使用Xftp 7来进行可视化上传文件

    问题3:解压jdk报错

    解决方法:保持压缩包为默认编码即可

    问题4:/etc/profile配置完,执行source之后,并没有生效问题

    在这里插入图片描述

    • 解决方法:我jdk解压的所在路径在/root/usr/java/jdk1.8.0_161
    • 所以在/etc/profile配置文件中修改一下路径就可以了【每个人根据自己jdk所在位置写路径】
      改为如下:
    export JAVA_HOME=/root/usr/java/jdk1.8.0_161
    export CLASSPATH=$JAVA_HOME/lib/
    export PATH=$PATH:$JAVA_HOME/bin
    export PATH JAVA_HOME CLASSPATH
    

    流程2:mysql的安装

    问题1:如果rpm包安装版本过低,想要换高版本时候

    yum的安装

    [root@iZuf66awdhxj55rqnamdh5Z  ~]# yum -y install mysql57-community-release-el7-10.noarch.rpm
    

    (1)先将原来的删掉
    rpm -e mysql-community-release-el7-5.noarch.rpm
    (2)在下载高版本的rpm包
    sudo rpm -ivh mysql-community-release-el7-5.noarch.rpm

    问题2:mysql的准确流程

    #1.下载
    wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
    
    #2.安装rpm包
    sudo rpm -ivh mysql-community-release-el7-5.noarch.rpm
    
    #3.安装MySQL
    sudo yum install mysql-server
    
    #4.1授权——授权了才能启动mysql
    chown root /var/lib/mysql
    #4.2授权(这两个那个都可以只有成功)
    chown -R mysql:mysql /var/lib/mysql
    
    //mysql设置
    #5.1首先启动MySQL
    [root@iZuf66awdhxj55rqnamdh5Z  ~]# systemctl start  mysqld.service
    #5.2重启——后面启动过了就执行重启
    systemctl restart mysql.service
    
    #6.查看运行状态
    systemctl status mysqld.service
    
    #7.连接(此时没有密码)
    mysql -u root
    
    #8.进入数据库
    use mysql;
    
    #9.更新密码
    mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';
    
    #12.授权MySQL指定了某个账户只能在某个地方登录服务器【可以不设置】
    例如,你想root使用password从任何主机连接到mysql服务器的话。 【我用的这个】
    mysql> grant all privileges on *.* to 'root'@'%' identified by 'password' with grant option;
    
    如果你想允许用户myuser从ip为182.112.32.142的主机连接到mysql服务器,并使用password作为密码 
    mysql> grant all privileges on *.* to 'root'@'47.97.110.236' identified by 'password' with grant option;
    
    #13.刷新
    mysql> flush privileges;
    mysql> exit
    
    MySQL服务器停止命令如下:net stop mysql
    
    • 注:mysql -u root -p输入密码的时候不提示,直接输入,然后按回车

    问题3:开启mysql的远程访问的时候报错【这个目前可以不用设置】

    • 注:设置授权的原因:是MySQL指定了某个账户只能在某个地方登录服务器;例如:root@192.168.1.155 表示账户 root 只能在IP地址为 19.168.1.155 的机器上登录MySQL服务器。
      • 这里的root代表root用户,最后的root代表root用户的密码,我这里用户名,密码都是root,中间的%号代表所有的ip地址都能远程访问,如果你要针对某一台机器开放远程访问权限,那就把%换成哪台机器的ip地址,这样就只能这台机器远程访问linux下的mysql数据库了。
      • on *.*:当数据库名称.表名称被*.*代替,表示赋予用户操作服务器上所有数据库所有表的权限。
      • to root@"%":用户地址可以是localhost,也可以是ip地址、机器名字、域名。也可以用’%'表示从任何地址连接。

    问题4:为防火墙添加开放端口出现的问题

    1. 首先要开启防火墙【建议打开防火墙】
      添加链接描述
    2. 为防火墙添加开放端口
      [root@iZuf66awdhxj55rqnamdh5Z ~]# firewall-cmd --zone=public --add-port=3306/tcp --permanent
    3. 重新载入
      [root@iZuf66awdhxj55rqnamdh5Z ~]# firewall-cmd --reload

    问题5:本项目要设置数据库为不区分大小写

    Linux上设置mysql【5.7】为不区分大小写【本人自己写的】

    问题6:centos7.8安装mysql5.7时Error: Unable to find a match: mysql-community-server

    解决链接

    流程3:nginx的安装

    关注conf 和sbin 两个文件,conf存放nginx 的配置文件nginx.conf ,sbin存放nginx 的启动文件
    ls

    问题1:安装nginx后找不到安装的软件

    • 在个人目录[cd /]下输入:cd usr/local/nginx:在这里,不在你root目录
    • 【个人目录下,虽然在root安装的】
      在这里插入图片描述
    • 后面就都在cd usr/local/nginx进行配置[conf]和启动[sbin]
      在这里插入图片描述
    • 一定要区分root用户和个人用户

    流程4:filezilla的安装

    • 本人在使用xftp 7这个软件。两个软件功能相同,自选。

    流程5:navicat连接远程mysql

    在这里插入图片描述

    • 登录远程数据库之后,将自己本地项目的数据库从新搭建一样的,包括表内容
      在这里插入图片描述

    流程6:前后端项目部署

    首先对springboot项目进行修改【application.yaml】

    1. 修改数据库账户密码
      在这里插入图片描述
    2. 修改端口号为,服务器自己添加的端口号
    • 注首页路径也需要注意,如果自己修改了,到时候访问的时候要输入
      在这里插入图片描述

    后端jar包

    问题1:nohup: appending output to ‘nohup.out’不显示

    • 这里是运行sh start.sh //启动服务出来的提示,不是什么错误
      不显示链接

    问题2:新建 jar包启动脚本 start.sh,添加以下启动命令更合理

    • 但是配置文件中更推荐写成nohup java -jar travels.jar >> java_log.log 2>&1 &
    • 解释说明

    问题3:当sh start.sh出现-bash: ./a.sh: Permission denied(启动权限不够的时候)

    • chmod 777 a.sh:用这个提高文件的权限功能
    • 提高权限后就可以使用:./start.sh

    问题4:当sh start.sh启动了多个项目的时候

    1. jps:来查看启动了那些
      在这里插入图片描述
    2. kill -9 1786:在根据开启项目的进程id来杀死项目
      在这里插入图片描述

    问题5:项目重启后的问题

    1. 重启mysql
    2. 重启nginx
    3. 项目的启动

    问题6:./start.sh开始运行项目之后需要看详细启动进程输入

    • tail -f java_log.log
      在这里插入图片描述
    • 退出输入:ctrl + c
    展开全文
  • 以CentOS7为例,需要提前安装好java环境... 注:config目录下修改对应的配置,这里的http://192.168.1.11:9095为项目的后台访问路径; 'use strict' module.exports = { NODE_ENV: '"production"', BASE_API: '...

            以CentOS7为例,需要提前安装好java环境,我这以nginx为例,也可根据实际情况部署到tomcat,;

    一、前期准备

    1、安装java环境;

    2、安装nginx;

    二、前端准备

    1、修改配置;

            注:config目录下修改对应的配置,这里的http://192.168.1.11:9095为项目的后台访问路径;

    'use strict'
    module.exports = {
      NODE_ENV: '"production"',
      BASE_API: '"http://192.168.1.11:9095"'
    }
    

    2、打包vue项目;

            npm run build;

    3、将打包好的dist目录上传至/opt目录下;

    4、修改nginx.conf配置文件[默认路径在/usr/local/nginx/conf/nginx.conf];
         alias  /opt/dist/;      ===>这里的/opt/dist/,指将打包后的dist文件放到opt目录下;

    location / {
                alias  /opt/dist/;
                index  index.html index.htm;
                try_files $uri $uri/ /index.html;
            }
    

    三、后台准备

    1、项目修改相关配置文件;

            a、(略)修改项目对应的数据库等其他路径的配置文件【根据自已情况编写】;

    2、项目打成jar包;

            a、打包步骤【参考:idea打包java可执行jar包 - 曲高终和寡 - 博客园】;

            b、打包命令【打出来的包先本地试下有没问题,这个命令我这挺好用,特此记录】:

                 mvn clean install -Dmaven.test.skip

    3、上传到opt目录

            运行命令:nohup java -jar XXXX.jar

            注:可从nohup.out文件中查看是否有错误;

    四、常见问题

            a、前端页面无法访问;

                    防火墙;

                    端口号;

                    nginx启动是否有问题;

             b、后台程序无法访问;

                   数据库是否连接成功;

                   查看nohup日志具体分析;

    展开全文
  • Springboot+vue前后端分离项目搭建一、准备工作二、项目骨架搭建2.1 后端框架搭建——idea利用Maven搭建springboot项目2.2 前端框架搭建——vue-cli4搭建vue项目安装cnpm安装脚手架清空缓存处理创建项目 一、准备...

    一、准备工作

    Spring Boot项目开发环境与工具:

    • jdk
    • maven
    • idea

    Vue项目开发环境:

    • nodejs
    • vscode

    后端技术栈:

    • SpringBoot
    • mybatis plus
    • postgresql

    前端技术栈:

    • vue
    • element-ui
    • axios

    二、项目骨架搭建

    2.1 后端框架搭建——idea利用Maven搭建springboot项目

    • 创建maven项目,不必选择项目骨架,直接单击Next按钮在这里插入图片描述
    • 配置项目名称、项目位置、组织名称、模块名称、项目版本号等信息在这里插入图片描述
    • 添加依赖,spring-boot-starter-parent
    <?xml version="1.0" encoding="UTF-8"?>
    <project xmlns="http://maven.apache.org/POM/4.0.0"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
        <modelVersion>4.0.0</modelVersion>
        <parent>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-parent</artifactId>
            <version>2.4.1</version>
            <!-- 提供一些maven配置,同时提供了dependency0management,可以使开发者在引入其他依赖时不必输入版本号,方便依赖管理 -->
        </parent>
        <groupId>org.example</groupId>
        <artifactId>woa</artifactId>
        <version>1.0-SNAPSHOT</version>
    
        <dependencies>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-web</artifactId>
            </dependency>
        </dependencies>
    
    </project>
    
    • 编写启动类

    在这里插入图片描述

    package org.example;
    
    import org.springframework.boot.SpringApplication;
    import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
    import org.springframework.context.annotation.ComponentScan;
    
    // @SpringBootApplication 包括 @SpringBootConfiguration、@EnableAutoConfiguration、
    // @ComponentScan
    @EnableAutoConfiguration
    // @EnableAutoConfiguration注解表示开启自动化配置,由于项目汇总添加了spring-boot-starter-web依赖
    // 因此在开启了自动化配置后会自动进行Spring和Spring MVC的配置
    @ComponentScan
    // @ComponentScan包扫描
    public class App {
        // 在Java项目的main方法中,通过SpringApplication中的run方法启动项目,第一个参数传入App.class
        // 告诉Spring哪个是主要组件,第二个参数是运行时输入的其他参数
        public static void main(String[] args){
            SpringApplication.run(App.class,args);
        }
    }
    
    • 创建一个控制器,提供“/hello”接口

      package org.example.controller;
      
      import org.springframework.web.bind.annotation.GetMapping;
      import org.springframework.web.bind.annotation.RestController;
      
      @RestController
      // @RestController 包含@ResponseBody/@Controller
      public class HelloController {
      
          @GetMapping("/hello")
          public String hello(){
              return "hello spring boot";
          }
      }
      
    • 启动项目,测试

    在这里插入图片描述

    2.2 前端框架搭建——vue-cli4搭建vue项目

    安装cnpm

    npm install -g cnpm --registry=https://registry.npm.taobao.org

    安装脚手架

    cnpm install -g @vue/cli

    清空缓存处理

    npm cache clean --force

    创建项目
    • 进入目标目录,选择自定义方式创建目录
    vue create 项目名
    // 这里面呢回车别按太快,空格是勾选,回车是下一步
    

    在这里插入图片描述

    • 选择需要的配置项在这里插入图片描述
    ? Check the features needed for your project: (Press <space> to select, <a> to toggle all, <i> to invert selection)
    ( ) Choose Vue Version //选择Vue版本 
    ( ) Babel //转码器,可以将ES6代码转为ES5代码,从而在现有环境执行。 
    ( ) TypeScript// TypeScript是一个JavaScript(后缀.js)的超集(后缀.ts)包含并扩展了 JavaScript 的语法,需要被编译输出为 JavaScript在浏览器运行
    ( ) Progressive Web App (PWA) Support// 渐进式Web应用程序
    ( ) Router // vue-router(vue路由)
    ( ) Vuex // vuex(vue的状态管理模式)
    ( ) CSS Pre-processors // CSS 预处理器(如:less、sass)
    ( ) Linter / Formatter // 代码风格检查和格式化(如:ESlint)
    ( ) Unit Testing // 单元测试(unit tests)
    ( ) E2E Testing // e2e(end to end) 测试
    
    • 选择vue版本在这里插入图片描述

    • 路由是否使用history模式,选否的话则使用hash模式,两个模式最直观的区别就是hash模式带了一个很丑的#,而history模式没有在这里插入图片描述

    • 选择css预处理器,node-sass是自动编译实时的,dart-sass需要保存后才会生效。sass 官方目前主力推dart-sass 最新的特性都会在这个上面先实现
      在这里插入图片描述

    • 选择Eslint代码验证规则,即javascript代码检测工具
      在这里插入图片描述

    • 选择什么时候进行代码规则检测,保存即检测还是commit的时候检测
      在这里插入图片描述

    • 选择如何存放配置,存在在单独的配置文件中还是统一存放在package.json文件中 在这里插入图片描述

    • 是否保存当前配置 在这里插入图片描述

    • 若保存当前配置,为当前配置起一个别名
      在这里插入图片描述

    • 等待创建项目,按照提示命令启动项目
      在这里插入图片描述
      在这里插入图片描述

    • 验证项目是否创建成功
      在这里插入图片描述

    • 引入element-ui

      cnpm install element-ui -S
      在这里插入图片描述
      在这里插入图片描述

    展开全文
  • 一、用IDEA打包vue项目 HD_CSPWH_CiTOS\cspwh-citos-isp-client文件中作如下修改: 1.build/utils.js修改为: if (options.extract) { //loaders.push(MiniCssExtractPlugin.loader) loaders.push({ loader: ...

    一、用IDEA打包vue项目

    1、打包前 :前端项目文件中作如下修改:

    (1)build/utils.js修改为:

    if (options.extract) {
          //loaders.push(MiniCssExtractPlugin.loader)
          loaders.push({
            loader: MiniCssExtractPlugin.loader,
            options: {publicPath:'../../'} //解决打包后背景图或者图片显示不出来的问题
          })
        } else {
          loaders.push('vue-style-loader')
        }

    (2)config/index.js配置:

     build: {
        // Template for index.html
        index: path.resolve(__dirname, '../../cspwh-citos-isp-server/src/main/resources/static/index.html'), //此处路径修改为自己对应的vue后端项目
    
        // Paths
        assetsRoot: path.resolve(__dirname, '../../cspwh-citos-isp-server/src/main/resources/static'),
        assetsSubDirectory: 'static',
    
        assetsPublicPath: './',
    }

    2、打包(按照第二种方式配置后,以后打包直接点击就可以):

    第一种方式:命令行(注意参考链接中的命令替换成:npm run build:prod )参考https://blog.csdn.net/u011010220/article/details/111253623

    第二种方式:

    3、执行打包操作后即可自动生成文件到对应的后端里

    4.在vue后端项目中执行mvn cleanmvn install即可生成jar包,直接运行jar包后,访问后端项目配置的端口就可看到自己项目界面。

    注意:该访问方式只适用于vue后端是spring boot的情况

    二、vue项目发布

    将jar包拷到服务器上进行发布

    展开全文
  • 文章目录 一、部署 Spring Boot 项目 1、在服务器上部署数据库 2、连接阿里云数据库 3、项目上传并运行 二、部署 Vue 项目 三、配置 Nginx 基于 Spring Boot + Vue前后端分离项目的部署方式主要有如下两种: 前后...
  • SpringBoot+Vue前后端分离项目实战:个人博客系统

    千次阅读 多人点赞 2021-03-08 19:59:44
    基于 SpringBoot + Vue 前后端分离开发的一款动态个人博客系统。 项目开源地址:Github | Gitee 前言 学习Java也有一段时间,期间更多的是理论的学习和一些Demo代码编写,知识还比较分散、浅薄,所以我做了这么一个...
  • springboot+vue前后端分离项目(后台管理系统)

    万次阅读 多人点赞 2021-08-13 22:45:29
    二、项目简介 这是一个基于SpringBoot和Vue的后台管理系统。 主要功能: 1.实现用户信息的CRUD,以及页面的显示。 2.用户权限的分配,不同权限的用户锁能看到的的界面信息和能进行的操作是不同的。 3.实现图片
  • 编写Controller二、搭建Vue前端1.IDEA安装Vue.js插件2.IDEA启动Vue项目3.编写Vue代码4.接收后端数据三、Element UI使用1.简单的数据展示2.Element-ui更多... 参看:https://www.bilibili.com/video/BV137411B7vB ...
  • 阿里服务器部署springboot+vue前后端分离项目 最近刚刚在实习熟悉公司的业务,所有尝试着自己将项目部署到服务器上。本次部署的项目是Spring Boot+Vue前后端分离项目,后端使用的技术有MySql、Redis,所以服务器上...
  • s)-$(uname -m)" -o /usr/local/bin/docker-compose sudo chmod +x /usr/local/bin/docker-compose # 检查是否安装成功 docker-compose --version 编写Dockerfile文件 因为我们的项目需要成为docker的镜像,所以我们...
  • 后端SpringBoot项目 1、数据库 将数据库备份一份到服务器或虚拟机上,然后修改项目的数据库连接路径,使其可以正常访问 2、打包 使用maven命令打包mvn clean package 使用Xftp将产生的jar包上传到服务器相关目录,...
  • windows服务环境使用Nginx部署springboot+vue项目 部署步骤:先在服务器上搭建运行环境,Nginx,MySQL,JDK,Redis。 注意:要先将springboot的配置文件application.yml下的redis,数据源的地址端口密码改成服务器...
  • 文章目录Docker+Nginx部署SpringBoot+Vue前后端分离项目一、安装docker1.卸载旧版本2.需要的安装包3.设置镜像的仓库(推荐使用国内阿里云)4.更新yum软件索引包5.安装docker相关的docker-ce 社区版6.启动docker7.查看...
  • 首先安装Vue CLI 这里安装是通过 npm 进行安装 npm即 Node Package Manager,Node.js 环境中的软件包管理器。随 Node.js 一起被安装。 需要先下载安装 Node.js 下载地址 安装后打开cmd 输入node -v 查看版本 n
  • 前后端分离项目快速搭建【前端篇】前端篇创建vue项目安装所需工具开始编码1、在根目录下添加vue.config.js文件2、编写main.js3、编写App.vue4、编写axiosutils.js5、在components目录下编写menu.vue7、在router目录...
  • 前后端分离项目快速搭建数据库准备后端搭建1、快速创建个SpringBoot项目2、引入依赖3、编写代码快速生成代码4、运行代码生成器生成代码5、编写application.properties6、在启动类上添加@MapperScan7、编写测试代码...
  • SpringBoot+MyBatisPlus+Vue 前后端分离项目实现登录注册-前端篇 1.使用WebStorm创建一个空项目2.安装插件3.router 路由映射4.登录注册界面5.修改App.vue6.修改main.js 后端搭建博客路径:后端搭建博客 1.使用...
  • 小结 好了,本文主要和小伙伴们介绍了一个在 Spring Security 中处理 session 并发问题时,可能遇到的一个坑,以及在前后端分离情况下,如何处理 session 并发问题。不知道小伙伴们有没有 GET 到呢? 如果觉得有收获...
  • RuoYi-Vue是一款基于SpringBoot+Vue前后端分离极速后台开发框架,因为本项目前后端分离的,所以需要前后端都启动好,才能进行访问。 使用Git命令 git clone https://gitee.com/y_project/RuoYi-Vue.git克隆 前端...
  • Springboot+Vue前后端分离项目实战

    千次阅读 2021-01-15 14:04:04
    Spring Boot + Vue 使⽤ Spring Boot 进⾏后端应⽤开发,使⽤ Vue 进⾏前端应⽤开发。 二、Vue + Element UI Vue 集成 Element UI Element UI地址:https://element.eleme.cn/#/zh-CN 2.1、Container 布局容器 ...
  • 前言: 看到大佬的博客推荐 也去看了这个up主的视频,很短,很有用 ... } } 最后 vue项目打包为dist: npm run build java项目打包: mvn clean 然后complile编译一下 最后打包 要target目录里的jar包
  • 文章目录SpringBoot+Vue前后端分离项目中实现编辑用户功能需求给编辑按钮添加单击事件editUser方法SpringBoot后端接收selectuserbyid请求的方法UserDao动态代理接口中的selectUserById方法UserDao.xml映射文件中的...
  • 文章目录前后端分离项目部署环境文件准备服务端DockerFile-server前端DockerFile-webnginx配置文件部署流程图宿主机文件目录后端部署流程前端部署流程Nginx相关配置 前后端分离项目部署 环境文件准备 服务端...
  • Vue作为目前前后端分离项目中比较热门的技术,如何去兼容Vue并且正确的使用他,是一个资料较少的问题,目前其他资料中多半为给出的Demo,这里讲解一下项目模块化的用法 所以,今天来写一下,关于Vue前端如何兼容...
  • 目录一、windows环境1.1、windows环境前端部署1.2、windows环境后端部署二、linux环境2.1、安装docker2.2、安装docker compose2.3、编写Dockerfile文件2.4...1、vue-springboot-blog视频教程:【一周速成】Vue+SpringBo
  • 1.cmd 创建项目,注意这里需要Vue3或者以上,不是的同学可以用其它方式创建前端项目,或者更新到Vue3以上也行。 进入到如下页面: 我先运行了一下之前的例子确保环境没问题, 2.点击项目管理进入创建页面 3.选择...
  • 公司的项目前后端分离的,后端用spring套装,前端用vue,是两个项目,最终部署时,需要把vue打的包dist文件夹的内容放到webapps目录下,然后后端项目再用maven命令打成war包。 以前的过程是这样的: 进入前端项目...
  • @[TO(这里写自定义目录标题) Maven 编译:Please refer to dump files (if any exist) [date].dump, ...IDEA+SpringBoot+Maven将项目达成jar包并部署至阿里云服务器上运行:https://blog.csdn.net/weixin_43490440/
  • 前后端完全分离项目,前端使用Vue + axios, 使用CORS协议解决跨域访问数据限制的问题,但是发现客户端的Ajax请求不会自动带上服务器返回的Cookie:SESSIONID 导致每一个Ajax请求在服务端看来都是一个新的请求,...
  • 2.build 项目审查dist目录 3.将dist整个文件发送到服务器中,我的是centos7 4.修改nginx.conf文件代理访问前端路径 #user nobody; worker_processes 1; #error_log logs/error.log; #error_log logs/error.log ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 27,598
精华内容 11,039
关键字:

vue前后端分离项目

vue 订阅