在项目中难免有一些重复的操作,比如读取数据等,此时把这些操作封装起来就很有必要了1.在main.js封装,在vue页面中获取数据(优点:不需要import操作,挂载在this中,可以获取vue对象,然后封装一些自定义操作)  main.js中:import Vue from 'vue'   import Axios from 'axios'   import ElementUI from 'el
转载 2023-05-29 15:34:19
283阅读
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></scrip
转载 2020-10-28 18:45:00
389阅读
2评论
Vue3 项目中,封装 Axios 用于处理 HTTP 请求是一种常见的实践。本文将全面探讨如何在 Vue3 中进行 Axios 的封装,包括环境准备、集成步骤、配置详解、实战应用、排错指南以及生态扩展。这些步骤将使开发者能够有效地管理 API 调用,提升项目的可维护性和可扩展性。 ## 环境准备 在开始封装 Axios 之前,我们需要确保项目的环境已准备妥当。以下是推荐的技术栈兼容性:
原创 5月前
15阅读
1.1 为什么选择axios? axios 是一个基于 promise 的 HTTP库网络请求插件. 基本特点 可以用在浏览器==(测试网站:httpbin.org/)==和 node.js中 支持 Promise API。 自动转换 JSON 数据。 客户端支持防御 XSRF。 创建项目:vue ...
转载 2021-10-28 20:01:00
182阅读
2评论
关键词:SDK,VUE,单例模式,代码复用本文旨在分享一个前端 sdk 的开发方式。即使用 vue 直接开发1.项目背景需求描述:1.开发一个集团通用 SSO 单点登录页面,大致如下图: 2.开发一个对应 sdk,给接入方使用,页面效果和 web 保持一致。如下图: SDK 需求: 提供调用方式给用户,可以传递参数,调用方法,直接生成登录弹框和背景半透明的蒙层在弹框成功
vue组件的定义● 组件(Component)是Vue.js最强大的功能之一● 组件可以扩展HTML元素,封装可重用代码● 在较高层面上,组件是自定义元素,Vue.js的编译器为他添加特殊功能● 有些情况下,组件也可以表现用 is 特性进行了扩展的原生的HTML元素● 所有的Vue组件同时也都是Vue实例,所以可以接受相同的选项对象(除了一些根级特有的选项),并提供相同的生命周期钩子vue组件的功
转载 2024-02-04 02:10:19
72阅读
Javascript是一种基于对象的语言,但它又没有class。这在很长的一段时间里,对JS的面向对象编程的概念很模糊,在编程的时候时有用到,但要说个所以然,却说不出来,所以看了些书,又在网上查了些资料,写下些总结。一、封装写个对象,将属性(变量),方法写在对象内,这就是封装。如下:我把两个属性封装在函数内。 var Cat = {     name : '',     color : ''  
转载 2023-08-09 11:14:28
132阅读
为了方便项目的维护,以及规范性,对axios进行必要的封装一、在 utils目录下 创建 auth.js 请求头 token的封装import Cookies from 'js-cookie' const TokenKey = 'loginToken' // 获取token export function getToken() { return Cookies.get(TokenKey)
转载 2024-04-08 23:22:13
58阅读
  前  言  继承是使用一个子类继承另一个父类,那么子类可以自动拥有父类中的所有属性和方法,这个过程叫做继承!  JS中有很多实现继承的方法,今天我给大家介绍其中的三种吧。 1.在 Object类上增加一个扩展方法 //声明一个父类 function Person(name,age){ this.name=name; t
转载 2023-09-15 22:45:24
126阅读
import axios from "axios"; // 封装 axiosexport function get(url, params = {}, headers = {}, option = {}) { return new Promise((resolve, reject) => { axi ...
转载 2021-09-07 11:25:00
203阅读
2评论
我们一般的做法是在 src 文件夹下 新建一个 util 文
原创 2022-08-04 16:20:38
756阅读
1、axios的安装:安装axios:cnpm install axios。引入:在项目的src文件夹中新建一个request文件夹,然后在里面新建一个http.js和一个api.js文件。http.js文件用来封装我们的axios,api.js用来统一管理我们的接口。2、axios的封装(直接贴代码)//在http.js中 /** * axios封装 * 请求拦截、响应拦截、错误统一处理
转载 2024-01-19 23:47:40
750阅读
Electron是一个使用 JavaScript、HTML 和 CSS 构建桌面应用程序的框架。 嵌入 Chromium 和 Node.js 到 二进制的 Electron 允许您保持一个 JavaScript 代码代码库并创建 在Windows上运行的跨平台应用 macOS和Linux——不需要本地开发 经验。 https://www.electronjs.org/ 目录01.打包封装1.创建v
1、校验数据类型export const typeOf = function(obj) { return Object.prototype.toString.call(obj).slice(8, -1).toLowerCase() }示例typeOf('vue') // string typeOf([]) // array typeOf(new Date()) // date typeO
转载 2024-03-18 09:00:44
36阅读
之前我发布了一篇是有关于uniapp的接口简单封装,这次我发布的是vue的接口简单封装,这次有涉及到几个依赖,需要提前安装好,一个是axios依赖,一个是qs依赖,以下是安装方法:npm install axios -S npm install qs安装完之后,就可以直接再也没中引入了,这次涉及到三个文件,一个是对axios的封装文件,即axios.js,一个是对接口的封装文件,即index.js
转载 2024-04-18 13:32:44
224阅读
一、安装axios和confignpm install axios --Savenpm install config --Save二、封装config文件在src目录下创建config文件夹,config内创建index.js文件//网络请求地址 例如: http://wwww.baidu.com 本地开发时,可直接填写后端测试接口地址(需要设置浏览器允许跨域请求,或后端设置Cross-orig
转载 2024-02-24 23:02:38
37阅读
js封装常用js方法封装1、forEachArray里面forEach是通过Array拓展原型方法实现的Array.prototype.forEach下面我就使用两种方式实现forEach封装//方法一 使用常规函数实现let arr=[1,3,5,3,6,7,8];function forEach(array,fn){for(let i=0;i<array.length;i++){    
转载 2021-03-12 11:06:20
231阅读
2评论
摘要在vue中,我们调用接口使用的都是axios,使用之前我们也会进行一定的封装,然后再进行使用。在这里,我们主要说一下axios的实现原理,以及如何使用原生的js来自己封装出一个axios。这里实现出几个主要的方法,包括post请求方法,create配置方法,以及拦截器的方法。1.post方法在我们写方法之前,肯定是要先自己写一个类出来,里面的内容先不用写。 然后再在类的下面写出post的方法:
javascript的相关特性一.、面向对象的三大特性:继承封装多态作为基于对象的语言,js自然可以实现OOP语言的大部分特征。继承:js没有类的概念,自然不能像php那样封装class然后继承最后new对象。但是js的继承却有更多的方式。在此讨论最常用的,也就是基于原型对象原型链继承。在js中,函数对象就相当于类,在函数对象中有一个prototype属性指向了函数对象的原型对象。在函数对象上创建
转载 2023-10-15 06:29:59
79阅读
//js并不是一种面向对象的语言, 没有提供对类的支持, 因此我们不能像在传统的语言里那样 用class来定义类,  //但我们可以利用js的闭包封装机制来实现js类, 我们来封装一个简的Shape类. //这个函数中定义了两个方法:show和init 需要注意的是这里用到的是this来声明,而不是var,因为var是用来定义私有方法的 func
转载 2023-11-17 22:28:54
54阅读
  • 1
  • 2
  • 3
  • 4
  • 5