Vue使用总结

第一步、建立Vue工程

打开Vue-cli

选择一个文件夹

在地址栏输入cmd,回车打开命令行

img

输入vue ui

img

在浏览器中打开 http://localhost:8000

img

打开vue项目管理器

img

创建新项目

点击导航栏中的创建

在下面的“在此创建新项目”

接着按照下面的操作一步一步走,就可以完成项目的创建了

img

最后的项目工程有这些文件

第二步、完善项目配置

1.不同环境配置

在项目目录下创建vue.config.js文件

image-20210227102413219

并输入下面内容

module.exports = {
    publicPath: "./",
    feaweif
    // 输出文件目录
    outputDir: process.env.outputDir,
};

更多配置请看Vue的官方说明:https://cli.vuejs.org/zh/config/

2.分别为不同环境配置不同的变量

  • 开发环境

在项目目录下创建".env"文件,并输入一下内容

NODE_ENV = 'development' 
VUE_APP_MODE = 'development' 
VUE_APP_API_URL= 'http://127.0.0.1:8099'

image-20210227103910969

  • 生产环境

在项目目录下创建".env.production"文件,并输入一下内容

NODE_ENV = 'production' 
VUE_APP_MODE = 'production' 
VUE_APP_API_URL= 'https://4ilab.mycraipy.cn'

image-20210227103927136

  • 测试环境

在项目目录下创建".env.test"文件,并输入一下内容

NODE_ENV = 'production' 
VUE_APP_MODE ='test' 
VUE_APP_API_URL= 'http://4ilab.mycraipy.cn:8099'
outputDir = 'test'

image-20210227103948735

3.添加测试环境和生产环境发布版本

修改项目目录下的package.json文件里的scripts为

"scripts": {
    "serve": "vue-cli-service serve",
    "build": "vue-cli-service build",
    "lint": "vue-cli-service lint",
    "buildtest":"vue-cli-service build --mode test",
    "publish": "vue-cli-service build && vue-cli-service build --mode test"
},

image-20210227104043315

第三步、发布项目

创建输出文件

使用脚本命令build,编译项目

image-20210227104155619

编译完成没有错的话,是这样子的

image-20210227104338687

这时候在项目的dist文件夹下就会有下面的一些文件

image-20210227104521398

我们使用浏览器打开index.html就可以查看网页了。

真正用于生产环境注意将 js 文件夹下的 *.map文件删除。

使用nginx部署

server{
	listen 80;
    server_name 4ilab.mycraipy.cn;
    index index.php index.html index.htm default.php default.htm default.html;
    root /www/wwwroot/4ilab/dist;
}

主要在nginx配置文件中修改几项参数

1.listen 监听端口

2.server_name 访问的域名,没有域名可以使用IP地址代替

3.root 就是dist文件夹所在的路径

常用库

axios

1.安装axios

npm install --save axios vue-axios 

2.在main.js中引入axios

import axios from "axios";
axios.defaults.headers.post["Content-Type"] =  "application/x-www-form-urlencoded;charset=utf-8";
axios.defaults.baseURL = process.env.VUE_APP_API_URL;

3.常用操作

get请求示例
axios.get('/user', {
    params: {
      ID: 12345
    }
  })
  .then(function (response) {
    console.log(response);
  })
  .catch(function (error) {
    console.log(error);
  });
post请求示例
axios.post('/user', {
    firstName: 'Fred',
    lastName: 'Flintstone'
  })
  .then(function (response) {
    console.log(response);
  })
  .catch(function (error) {
    console.log(error);
  });

更多操作请前往官方文档:http://www.axios-js.com/zh-cn/docs/

element-ui

1.安装element-ui

npm i element-ui -S

2.引入element-ui

a.完整引入
import Vue from 'vue';
import ElementUI from 'element-ui';
import 'element-ui/lib/theme-chalk/index.css';
import App from './App.vue';

Vue.use(ElementUI);

new Vue({
  el: '#app',
  render: h => h(App)
});
b.按需引入

借助 babel-plugin-component,我们可以只引入需要的组件,以达到减小项目体积的目的。

首先,安装 babel-plugin-component:

npm install babel-plugin-component -D

然后,将 .babel.config.js 修改为:

module.exports = {
  presets: ["@vue/cli-plugin-babel/preset"],
  plugins: [
    [
      "component",
      {
        libraryName: "element-ui",
        styleLibraryName: "theme-chalk"
      }
    ]
  ]
};

image-20210301141038549

接下来,如果你只希望引入部分组件,比如 Button 和 Select,那么需要在 main.js 中写入以下内容:

import Vue from 'vue';
import { Button, Select } from 'element-ui';
import App from './App.vue';

Vue.component(Button.name, Button);
Vue.component(Select.name, Select);
/* 或写为
 * Vue.use(Button)
 * Vue.use(Select)
 */

new Vue({
  el: '#app',
  render: h => h(App)
});

完整组件列表和引入方式(完整组件列表以 components.json 为准)

3.使用

参照官网的使用说明https://element.eleme.cn/#/zh-CN/component/installation

vue-router

1.安装

npm install vue-router

2.引入

新建router文件夹,并新建index.js,写入下面内容

import Vue from "vue";
import VueRouter from "vue-router";
import Index from "../views/index.vue";
Vue.use(VueRouter);

const routes = [
  {
    path: "/",
    name: "Index",
    component: Index,
    meta: {
      title: "主页"
    }
  },
];

const router = new VueRouter({
  routes
});

export default router;

在main.js中引入

import router from "./router";
new Vue({
  router,
  render: h => h(App)
}).$mount("#app");

3.使用

参考官网地址https://router.vuejs.org/zh/guide/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Craipy

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值