Vue项目部署及使用WebStorm开发Vue

  • Vue项目部署
    • 搭建Vue环境
    • 新建Vue项目
  • 使用WebStorm开发Vue
    • WebStorm相关配置
  • 配置路由
  • 全局页面App.vue
  • 全局引入组件
  • 导航栏的灵活使用
  • 前后端对接
    • axios简单封装ajax
    • config配置
    • 连接接口
  • Bulid打包

Vue项目部署

大家好! 以下是我在学习vue时,关于部署vue项目的个人经验,现在还是vue小白,如果写的哪里有问题欢迎大家提出。

搭建Vue环境

windows环境搭建Vue开发环境,推荐该博客阿梅の博客中的内容,本人按照上面步骤配置多台机器都一次成功。

  1. 安装脚手架命令

    cnpm install vue -g

  2. 安装vue-cli 脚手架(vue命令行工具)

    cnpm install vue-cli -g

新建Vue项目

以下是我在新建vue项目时的心得记录,借鉴了阿梅の博客中的内容:

  1. 打开存放项目的文件夹,在路径栏直接输入CMD,回车,弹出命令提示符。

  2. 创建项目,在命令提示符只输入以下代码

    vue init webpack 项目名称(英文)

  3. 按照图中选项选择安装,除了 Use ESLint to lint your code? 选择No以为其他全是默认选择即可。Use ESLint to lint your code? 选择Yes的话会因为排版不好而报错无法运行,个人很不喜欢。

    选项 默认选择 含义
    Project name '项目名称' 项目名称
    Project description A Vue.js project 项目描述
    Author '作者' 作者
    Vue build standalone build方式
    Install vue-router? Yes 安装路由
    Use ESLint to lint your code? Yes,推荐选择No 检测代码规范
    Set up unit tests Yes 设置单元测试
    Pick a test runner jest 选择测试运行程序
    Setup e2e tests with Nightwatch? Yes e2e 自动化测试
    Should we run npm install for you … npm 是否安装npm
  4. 初始化完成后的项目目录结构如下:

    文件名 用途
    build 最终发布代码的存放位置。
    config 配置目录,包括端口号等。我们初学可以使用默认的。
    node_modules 这是执行npm install后产生的,里面包含了Node.js 和npm依赖的文件以及后续安装的 第三方组件或者第三方功能。
    src 我们要开发的目录,用于存放页面相关的文件,基本上要做的事情都在这个目录里。其中还包含了以下几个目录及文件
    assets 放置一些图片,如:Logo等;
    components 存放了一个组件文件,可以不用;
    App.vue 是我们的主文件,项目入口文件,我们也可以直接将组件写这里,而不使用components目录;
    main.js 项目的核心文件;
    router 其中包括的index.js,则是项目的路由;. static:一般用于存放静态资源,如图片、字体等。
    .babelrc文件 用来设置转码的规则和插件的,一般情况不需要设置。
  5. 安装工程依赖模块。

    cnpm install

    定位到对应工程目录下,安装该工程依赖的模块,这些模块将被安装在:mytest\node_module目录下,node_module文件夹会被新建,而且根据package.json的配置下载该项目的modules

  6. 使用nodejs启动运行该项目,测试一下该项目是否能够正常工作。

    cnpm run dev

    运行完成后在浏览器输入对应地址http://localhost:8080即可 ,我这里因为已经运行一个项目占用了8080端口,所以是8081。

使用WebStorm开发Vue

前端vue开发主流的两大软件就是VS code(Visual Studio Code)与WebStorm。我个人偏向于使用WebStorm,因为VS code大部分功能都需要下载对应插件,而WebStorm主要功能都自带好了,我只下载过汉化插件。

WebStorm相关配置

  1. WebStorm下载安装,在 WebStorm官网下载即可。

  2. WebStorm软件需要激活,我一般都是使用免费激活码,要是激活过期了可以点击链接再次激活。

  3. WebStorm汉化
    网上汉化教程大多都需要下载汉化包自己配置,我这里的方法只需点击两步即可。

    我本地已经汉化过了,未汉化的话就点击顶部菜单栏File,选择Settings选项,也可以使用快捷键Crtl+Alt+S快速打开设置选项。

    然后在搜索框内输入Chinese,显示的第一个插件点击安装(Update),安装完成后重启就汉化成功了。

  4. WebStorm配置runbuild命令

    选择添加配置
    选择npm
    命令选择run,脚本选择dev
    如果需要build其他如上,脚本选择build即可
    最后点击运行即可

  5. WebStorm终端,与命令提示符一样,可以直接输入命令执行。

配置路由

前端路由文件router/index.js

字段名 含义
path 路径名
name 名称
component 组件

新增页面index.vue,并在路由中配置路径为'/'

这里还有一个vue的logo,要在全局页面App.vue里去掉。

全局页面App.vue

App.vue位于src路径下,我这里把vue的logo图标以及全局居中,和上外边距注释了。

全局引入组件

Vue前端常用组件库里有我整理的一些组件,这里以引入vant组件为例。
使用npm命令安装,在webstorm终端输入以下代码:

npm i vant -S

安装完成后,在main.js中加入以下代码:

import Vue from 'vue';
import Vant from 'vant';
import 'vant/lib/index.css';Vue.use(Vant);


index.vue页面中使用Vant的按钮组件

导航栏的灵活使用

components文件夹下新建Navbar.vue,代码如下:

<template><div><van-sticky><van-nav-bar :title="$route.meta.title_text" style="background-color: #fff0f6"/></van-sticky></div>
</template><script>export default {name: "NavBar"}
</script><style scoped></style>

然后在App.vue中全局引用,并加入v-if判断,代码如下:

最后,在路由index.js中选择是否显示,以及title,代码如下:

效果如下:

前后端对接

axios简单封装ajax

src目录下新建axios文件夹,axios文件夹中新建axiosCore.jstestapi.js文件。

  1. axiosCore.js封装ajax技术,里面有关于简单跨域问题的解决,可以在里面添加require header(请求头)内容。

    import axios from "axios"
    import qs from 'Qs'
    // `withCredentials` 表示跨域请求时是否需要使用凭证
    axios.defaults.withCredentials = false
    /****** 创建axios实例 ******/
    const axiosCore = axios.create({baseURL: process.env.TEST_URL,timeout: 10000// 请求超时时间
    })
    // request拦截器==>对请求参数做处理
    axiosCore.interceptors.request.use(config => {config.method === 'post' ? config.data = qs.stringify(config.param) : config.params = config.param;config.param = null;config.headers['Content-Type'] = 'post' ? 'application/x-www-form-urlencoded' : 'application/json;charset=utf-8';return config;
    }, error => {// 请求错误处理Promise.reject(error)
    })export default axiosCore
  2. testapi.js文件,配置连接接口方法,可以方便调用。

    import axiosCore from './axiosCore'export const Get = (data) => {return axiosCore({url: '/',method: 'get',param: data}).then(data => data)
    }export const Post = (data) => {return axiosCore({url: '/',method: 'post',param: data}).then(data => data)
    }
    
    内容 含义
    url 接口地址
    method getpost
    param data
  3. 安装axios,终端输入以下运行命令。

    cnpm install axios --save

config配置

dev.env.js

'use strict'
const merge = require('webpack-merge')
const prodEnv = require('./prod.env')module.exports = merge(prodEnv, {NODE_ENV: '"development"',TEST_URL: '"接口路径前缀"'
})

pro.env.js

'use strict'
module.exports = {NODE_ENV: '"production"',TEST_URL: '"接口路径前缀"'
}

连接接口

因为我自己不会后端所以就找了些网上的开源接口,进行连接

<template><div style="margin: 3% 7%"><div style="box-shadow: 2px 2px 5px #c41d7f"><!--qq号码 输入框--><van-fieldv-model="qqNum"type="number"centerclearablelabel-align="right"label="QQ号码"label-width="60px"placeholder="请输入QQ号码"@clear="clearInfor"><!--确认 按钮--><template #button><div style="box-shadow: 1px 1px 2px #c41d7f"><van-buttonsize="small"color="linear-gradient(to right, #ffd6e7, #ffadd2)"@click="btnGet">确认</van-button></div></template></van-field></div><div v-if="isShow" style="margin-top: 7%;text-align: center"><div v-for="item in list"><!--头像图片--><van-imagewidth="10rem"height="10rem"fit="contain":src="item.imgurl"style="box-shadow: 2px 2px 5px #c41d7f"/><!--昵称--><div style="margin-top: 3.8px;font-size: 22px;color: #f759ab">{{item.name}}</div></div></div></div>
</template><script>import axios from "axios";export default {data() {return {qqNum: '',  //qq号码list: [],   //信息列表isShow: false,  //头像,昵称是否显示}},methods: {// 确认按钮事件btnGet() {let _this = this;_this.list = [];axios({url: "https://api.oioweb.cn/api/qq.php",method: "get",params: {'qq': this.qqNum}}).then(data => {if (data.data.code == 1) {_this.list.push(data.data);_this.isShow = true;// _this.$toast.success("登录成功");} else {_this.$toast.fail(data.data.msg);}});},// 清除按钮 事件clearInfor() {this.list = [];this.isShow = false;}},name: "getQQ"}
</script><style scoped></style>

效果如下

Bulid打包

注意直接build出来的网页或出现问题,要先在config/index.js文件中将两处assetsPublicPath: ‘/’ 改为assetsPublicPath: ’ '

Vue项目部署及使用WebStorm开发Vue相关推荐

  1. vue项目部署服务器两个域名,Vue项目服务器部署之子目录部署方法_飛雲_前端开发者...

    首先介绍一下Poi,我们的项目没有使用webPack进行前端工程项目管理,使用了Poi进行管理:Develop 开发 执行npm run dev相当于执行poi,执行npm run dist相当于执行 ...

  2. Vue项目部署到云开发前端网页托管|unicloud版

    Vue项目部署到云开发前端网页托管-unicloud版 前言 创建Vue项目  一.检查环境   1.检查`Node`环境   2.检查`Vue`环境  二.创建项目   1.项目创建   2.创建成 ...

  3. linux 退出服务器_Vue实战091:Vue项目部署到nginx服务器

    项目开发完成之后我们就需要将项目上线运行供用户访问,这时候我们就需要将项目部署到服务器上.对于Vue这种前端Web项目我们一般都部署在linux系统上,Linux常见的Web应用服务器有Apache. ...

  4. vue项目部署到nginx

    vue项目部署到nginx 一.vue项目打包 修改config/index.js的assetsPublicPath为 ./(注意一定是build里面的,下面dev中也有这个配置) 这个路径的配置很重 ...

  5. 将Vue项目部署在Nginx,解决前端路由、反向代理和静态资源问题

    将Vue项目部署在Nginx,解决前端路由.反向代理和静态资源问题 需求: 一台服务器,Linux 安装了Nginx 使用Vue脚手架编写的Vue项目 第一步:将Vue项目打包,然后将生成的dist文 ...

  6. vue项目部署到服务器后浏览器标签上的小图标消失不见

    背景: 最近在开发项目过程中发现一个问题,项目部署到服务器后在浏览器打开,会发现浏览器标签上的小图标消失不见了.百度查找问题,网上给出了许多解决的方案,例如清除浏览器缓存.把图标的相对路径改成绝对路径 ...

  7. 面试宝典六-- 项目部署(linux环境搭建,springboot项目部署 ,vue项目部署,nginx负载均衡)

    环境准备 实际开发中,项目肯定是部署在一个个的linux系统服务器中的,学习过程中,可以在自己电脑上安装虚 拟机然后配置linux操作系统进行模拟项目部署,当然也可以花费较小费用使用各种平台提供的云服 ...

  8. 将springboot项目和vue项目部署到windows 2016 server(服务器)

    将springboot项目和vue项目部署到服务器 1.服务器环境配置 1.1 服务器需要安装的环境 1.2 服务器需要配置的入站与进站规则 2.springboot项目的打包 2.1 springb ...

  9. 六十四、Vue项目去哪儿网App开发准备

    2020/10/20 . 周二.今天又是奋斗的一天. @Author:Runsen @Date:2020/10/20 写在前面:我是「Runsen」,热爱技术.热爱开源.热爱编程.技术是开源的.知识是 ...

最新文章

  1. bzoj3442 学习小组
  2. Intellij IDEA 竟然把 Java8 的数据流问题这么完美的解决掉了!
  3. openstack-r版(rocky)搭建基于centos7.4 的openstack swift对象存储服务 四
  4. leetcode 263. 丑数(Java版)
  5. Day_03-函数和模块的使用
  6. Linux日志查找技巧
  7. Nacos(七)之Spring Cloud集成
  8. asp.net 生命周期中的时间流程
  9. php采集绕过cloudflare,三行代码带你绕过cloudflare反爬
  10. 条款12:复制对象时勿忘其每一个部分
  11. 关于海量分页的补充说明(转)
  12. makefile工作笔记0002---gcc -O0 -O1 -O2 -O3 四级优化选项及每级分别做什么优化
  13. JSON使用时,注意0件和空。
  14. spring-data-jpa 的@Query注解的使用
  15. ​Fruits 360数据集
  16. 【转自人人】本科生如何发表论文
  17. Editplus 使用技巧大全
  18. php配置使用pdo,解析php5配置使用pdo
  19. win10用户权限设置计算机管理权限,win10系统怎么取得完美管理员权限
  20. 巴别塔圣经_承认巴别塔

热门文章

  1. python用支持向量机回归(SVR)模型分析用电量预测电力消费
  2. Assignment | 05-week1 -Character level language model - Dinosaurus land
  3. 【线性代数基础进阶】向量-part2
  4. CAD中怎么定义视口?CAD视口定义教程
  5. 互联网时代,学什么专业就业好?
  6. 好莱坞走到新时代的门口 六大高层动荡背后的真相
  7. 考试点计算机考研,【考研心路历程】祭奠我的计算机考研路
  8. 中国电信2021秋招笔试
  9. 解决MySQL报错2003-Can not connet to MySQL server
  10. 微型计算机存储器系统中的cache是(),微型计算机存储器系统中的Cache是