如何快速搭建一个完整的vue2+element-ui的项目-二

news/2024/12/14 13:01:19/

技术细节-继续配置

提示:你以为这样就完了吗,其实还有很多东西需要我们自己手写的

例如:

  • element-ui的配置
  • 样式重置配置
  • src使用@的配置
  • elinst配置
  • axios异步请求的二次封转配置
  • 语言国际化配置(这个看需求,我这里就不用配置了)
  • vuex的配置
  • mixins的配置
  • 开发环境的配置

  继续: 

axios异步请求的二次封转配置

 这个是每一个项目中都必须要的:

    首先下载axios 插件

    npm i axios -S

   其实在项目的src目录中新建 utils目录,然后再新建request.js

        src --> utils --> request.js 

代码: 

import Vue from 'vue'
import axios from 'axios'// 设置超时时长
axios.defaults.timeout = '30000'// request拦截器
axios.interceptors.request.use((config) => {return config
}, (error) => {return Promise.reject(error)
})// responese拦截器
axios.interceptors.response.use((res) => {return res.data
}, (error) => {Vue.$message.error(error.toString())return Promise.reject(error)
})/*** 设置请求header* @param {Object} headers*/
const setHeader = (headers) => {for (const key in headers) {axios.defaults.headers[key] = headers[key]}
}/*** POST请求* @param {String} url 地址* @param {Object} params 参数* @param {Object} headers headers*/
export const request= (url, params, method,headers = {}) => {return new Promise((resolve, reject) => {setHeader(headers)axios({url,method,data: method == 'post'? params:"",params: method =='get'?params:"" }).then((response) => {resolve(response.data)}).catch((error) => {reject(error)})})
}/*** 文件上传* @param {String} url 地址* @param {File} file 文件*/
export const uploadFile= (url, file) => {return new Promise((resolve, reject) => {const formData = new FormData()formData.append('file', file)formData.append('currentDate', Date.now())axios.post(url, formData, {headers: {'Content-Type': 'multipart/form-data'}}).then((response) => {resolve(response.data)}).catch((error) => {reject(error)})})
}
vuex的配置 (项目自动完成了)

这个项目已经配置完成

mixins的配置 (这个主要是放公共的方法)

在src目录中新建mixins文件夹,然后再新建index.js

src  --> mixins  ---> index.js

export default {data() {return {};},created(){},methods: {},
};

在使用mixins的时候要注意了: 他的方法 和 vue的方法 的先后使用问题

  

开发环境的配置 (这里的开发环境是指当前是 开发 ,  生产,  测试)

  配置如下:在项目的根目录新建三个文件

 都写相同的代码:

NAME="开发环境 dev"

VUE_APP_API_URL=http://127.0.0.1   // url为不用环境的地址

小结

提示:跨域我就没有写了,这个百度就有

项目搭建完成之后,希望大家自己启动然后测试一下,有问题的哈,可以在想交流,


http://www.ppmy.cn/news/1391257.html

相关文章

Learn OpenGL 19 几何着色器

几何着色器 在顶点和片段着色器之间有一个可选的几何着色器(Geometry Shader),几何着色器的输入是一个图元(如点或三角形)的一组顶点。几何着色器可以在顶点发送到下一着色器阶段之前对它们随意变换。然而,几何着色器最有趣的地方…

Flask vs. Django:选择适合你的Web开发框架【第134篇—Flask vs. Django】

👽发现宝藏 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。【点击进入巨牛的人工智能学习网站】。 Flask vs. Django:选择适合你的Web开发框架 在选择一个适合你项目的Web开发框架…

美食杂志制作秘籍:引领潮流,引领味蕾

美食杂志是一种介绍美食文化、烹饪技巧和美食体验的杂志,通过精美的图片和生动的文字,向读者展示各种美食的魅力。那么,如何制作一本既美观又实用的美食杂志呢? 首先,你需要选择一款适合你的制作软件。比如FLBOOK在线制…

牛客NC196 编辑距离(一)【较难 DFS/DP,动态规划,样本对应模型 Java,Go,PHP】

题目 题目链接: https://www.nowcoder.com/practice/6a1483b5be1547b1acd7940f867be0da 思路 编辑距离问题 什么是两个字符串的编辑距离(edit distance)?给定字符串s1和s2,以及在s1上的如下操作:插入&…

python3GUI--qt仿暴风影音视频播放器By:PyQt5(附下载地址)

文章目录 一.前言二.环境1.开发环境2.打包环境3.运行环境 三.软件截图1.启动页2.视频播放3.音频播放4.其他1.托盘2.对话框 四.功能总览五.代码展示&心得1.UI设计2.如何防止卡顿3.如何自定义组件 五.思考…

19.C++20中的std::latch和std::barrier

文章目录 线程闩std::latch和线程卡std::barrier线程闩std::latch线程卡std::barrier的使用线程闩std::latch和线程卡std::barrier的区别reference 欢迎访问个人网络日志🌹🌹知行空间🌹🌹 线程闩std::latch和线程卡std::barrier …

PPT好看配色

放几个链接!画图时候可以参考!转自知乎 Color Hunt ColorDrop 中国色 Flat UI Colors Coolors

Java 根据IP获取IP地址信息(离线)

<!-- https://mvnrepository.com/artifact/org.lionsoul/ip2region --><dependency><groupId>org.lionsoul</groupId><artifactId>ip2region</artifactId><version>2.7.0</version></dependency> 地址&#xff1a;http…