你是怎么开发项目的?

你都做过哪些项目,你是怎么开发项目的?

​ 我开发的项目是每时每刻,这个项目是我一个人开全程开发的,、
(这里尽量说是自己单独开发,面试几率会大一些)

​ 第一开始项目前,我会先选择框架,我选择的是vue来开发这个项目,因为vue开发起来方便不想react那样需要自己写路由啊公共存储啊什么,vue框架是吧大部分东西配好了,,而且我也比较喜欢vue。

​ 再者是我所用到的技术栈应为最近开发,因为我这个项目是移动端,所以我首选vant,vant框架他有许多很好用的组件,是我比较喜欢的,比如loading加载,当然有一些loading图肯定是要自己加上去,闲的整个项目,更加美感,至此来提高用户体验。

​ 再有就是配置多环境变量,这个东西,虽然配置起来有一些麻烦,但是为了后期的方便,还是要配置的,这个多环境变量需要在根目录下创建三个.env的文件夹,分别对应的开发,生产, 测试环境变量;

​ 内部的代码为:

NODE_ENV = "development";
VUE_APP_MODE = "prod" //这里是我开发环境的变量
VUE_APP_API_URL = "http://11111111.com/api/demo"//这里是如果上边的是开发变量,
//这里就是开发的路径测试就是测试的路径

然后在网络请求模块里设置接口环境,就是创建axios的实例的baseURL:PROCESS.env.VUE_APP_API_URL

到这之后就是网络封装模块了这是我开发中也是必须的一向,等下我再娓娓道来,

设置好axios的请求头之后,需要在package.json配置我启动项目时候的命令名称以及启动命令,完成之后

就可以npm run ***这个是打包名称就是配置.env时候VUE_APP_MODE后面跟着的环境变量名称。到这多环境变量就配置成功了。

​ 然后就是封装网络请求模块了,毕竟vue是一个多模块开发,没有axiso的第二次封装怎么可以,为什么说他是第二次封装,因为axios是对ajax进行了第一次封装,让请求接口更加简便一目了然,但是后期项目请求的接口肯定不止一两个,这时候就需要我来给他进行第二次封装,所谓第二次封装,就是把请求接口统一放在一个文件内管理,多个方法运用一套请求,既然是模块请求那肯定是需要自己的文件夹,在src内创建utils(实用程序),然后在创建一个network文件夹,内部有三个文件第一个Url.js这个文件就是我统一管理的接口路径,还有就是我所用到的请求方式,最常用的两种GET和POST,先写上,还有其他的后续再加,然后就是core.js文件,这里就要对我自己的axios进行封装了,既然封装axios,那就肯定是要引入axios ,这里我还引入了请求方式,是以解构赋值的方式,import {METHOD} from “./Url.js”,到这里时候,我前面有提到过baseURL的设置,就在这里设置,

var BASEURL = PROCESS.env.VUE_APP_API_URL
const axiosInstance = axios.create({
  baseURL: BASEURL, //默认会拼接到请求路径前面
  timeout: 20000,
});

然后,设置请求拦截器,让她弹出个loading或者携带token,然后响应请求,收起loading或者对请求到的数据做点什么,

​ 然后,对请求格式做一个模板

export function request(method, url, params) {
  switch (method) { // 对method进行一个判断
    case METHOD.GET: //如果是GET就用GET方式请求
      return GET(url, params);
    case METHOD.POST: //如果是POST就用POST方式请求
      return POST(url, params);
      //如果有PUT就再加一个PUT的case,就行了
  }
}

// 请求方式
function GET(url, params) {
  return axiosInstance.get(url, params);
}

function POST(url, params) {
  return axiosInstance.post(url, params);
}

然后就是对我的请求方法进行封装,index.js文件 就所谓的入口文件

引入core,引入url

import {request} from “./core”;

import {METHOD , URL} from “./Url”;

这里要有请求方式和请求路径,然后抛出一个对象,把这个对象设置成Vue的原型

  install(Vue) {//这里我用到了一个install的方法,这是因为我在main里引入了这个index.js的接口文档,然后				Vue.use(API) ,因为我写了use,use被调用会默认执行install
    Vue.prototype.$API = this;
  },

然后就是方法了

login(data){
  return request(METHOD.POST,URL.LOGIN,data);
}

用方法,我就可以直接在组件中this.login()使用,网络封装虽然有点麻烦但是我后期维护起来更好维护,既然是移动端,那肯定是有rem的,rem布局是非常流行的,所以我也使用了rem的布局,来让我的项目更加的实用

最后就是一些项目里的常用功能,比如上拉懒加载,吸顶,或者回到顶部什么的

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值