关于axios不能使用Vue.use()浅析


Posted in Javascript onJanuary 12, 2018

前言

最近在学习axios,在使用过程遇到了一些问题,觉着有必要给大家分享下,关于axios的基本知识大家可以参考这篇文章:axios基本入门用法教程 ,下面话不多说了,来一起看看详细的介绍吧。

问题

相信很多人在用Vue使用别人的组件时,会用到 Vue.use() 。例如:Vue.use(VueRouter)Vue.use(MintUI) 。但是用 axios时,就不需要用 Vue.use(axios) ,就能直接使用。那这是为什么呐?

答案

因为 axios 没有 install。

什么意思呢?接下来我们自定义一个需要 Vue.use() 的组件,也就是有 install 的组件,看完之后就明白了。

定义组件

生成模版  vue init webpack-simple custom-global-component

custom-global-component 为新建的文件夹名称

然后一路回车

cd custom-global-component 进入该文件夹

npm install 安装本次需要的模块

npm run dev 运行项目

如果能正常打开,进行下一步

这是当前项目目录:

关于axios不能使用Vue.use()浅析
项目目录

1.创建如下图中的文件夹和文件

关于axios不能使用Vue.use()浅析

项目目录

2.在 Loading.vue 中定义一个组件

<template>
 <div class="loading-box">
 Loading...
 </div>
</template>

3.在 jndex.js 中 引入 Loading.vue ,并导出

// 引入组件
import LoadingComponent from './loading.vue'
// 定义 Loading 对象
const Loading={
 // install 是默认的方法。当外界在 use 这个组件的时候,就会调用本身的 install 方法,同时传一个 Vue 这个类的参数。
 install:function(Vue){
 Vue.component('Loading',LoadingComponent)
 }
}
// 导出
export default Loading

4.在 main.js 中引入 loading 文件下的 index

// 其中'./components/loading/index' 的 /index 可以不写,webpack会自动找到并加载 index 。如果是其他的名字就需要写上。
import Loading from './components/loading/index'
// 这时需要 use(Loading),如果不写 Vue.use()的话,浏览器会报错,大家可以试一下
Vue.use(Loading)

5.在App.vue里面写入定义好的组件标签 <Loading></Loading>

<template>
 <div id="app">
 <h1>vue-loading</h1>
 <Loading></Loading>
 </div>
</template>

6.看到这儿大家应该就明白了吧,用 axios时,之所以不需要用 Vue.use(axios) ,就能直接使用,是因为开发者在封装 axios 时,没有写 install 这一步。至于为啥没写,那就不得而知了。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Javascript 相关文章推荐
js showModalDialog参数的使用详解
Jan 07 Javascript
Javascript连接多个数组不用concat来解决
Mar 24 Javascript
超链接的禁用属性Disabled使用示例
Jul 31 Javascript
Ajax局部更新导致JS事件重复触发问题的解决方法
Oct 14 Javascript
PHP中CURL的几个经典应用实例
Jan 23 Javascript
被遗忘的javascript的slice() 方法
Apr 20 Javascript
基于JavaScript实现根据手机定位获取当前具体位置(X省X市X县X街道X号)
Dec 29 Javascript
深入理解JavaScript中的浮点数
May 18 Javascript
解析Vue2.0双向绑定实现原理
Feb 23 Javascript
本地存储localStorage用法详解
Jul 31 Javascript
使用 vue 实例更好的监听事件及vue实例的方法
Apr 22 Javascript
JS大坑之19位数的Number型精度丢失问题详解
Apr 22 Javascript
Vuex 进阶之模块化组织详解
Jan 12 #Javascript
动态Axios的配置步骤详解
Jan 12 #Javascript
JS兼容所有浏览器的DOMContentLoaded事件
Jan 12 #Javascript
使用JS获取SessionStorage的值
Jan 12 #Javascript
node.js+express+mySQL+ejs+bootstrop实现网站登录注册功能
Jan 12 #Javascript
web前端vue filter 过滤器
Jan 12 #Javascript
你可能不知道的前端算法之文字避让(inMap)
Jan 12 #Javascript
You might like
深入php多态的实现详解
2013/06/09 PHP
简单的php文件上传(实例)
2013/10/27 PHP
php无限极分类递归排序实现方法
2014/11/11 PHP
PHP 反射(Reflection)使用实例
2015/05/12 PHP
PHP中COOKIES使用示例
2015/07/26 PHP
Laravel使用scout集成elasticsearch做全文搜索的实现方法
2018/11/30 PHP
JavaScript入门教程(2) JS基础知识
2009/01/31 Javascript
javascript与CSS复习(三)
2010/06/29 Javascript
Juqery Html(),append()等方法的Bug解决方法
2010/12/13 Javascript
JS函数重载的解决方案
2014/05/13 Javascript
JS逆序遍历实现代码
2014/12/02 Javascript
基于jQuery实现美观且实用的倒计时实例代码
2015/12/30 Javascript
详解AngularJS中的http拦截
2016/02/09 Javascript
jQuery实现Select左右复制移动内容
2016/08/05 Javascript
JS条形码(一维码)插件JsBarcode用法详解【编码类型、参数、属性】
2017/04/19 Javascript
JS使用正则表达式验证身份证号码
2017/06/23 Javascript
jquery实现用户登陆界面(示例讲解)
2017/09/06 jQuery
JavaScript数组push方法使用注意事项
2017/10/30 Javascript
jQuery中的for循环var与let的区别
2018/04/21 jQuery
Vue2.0仿饿了么webapp单页面应用详细步骤
2018/07/08 Javascript
vue flex 布局实现div均分自动换行的示例代码
2020/08/05 Javascript
vue 项目引入echarts 添加点击事件操作
2020/09/09 Javascript
[38:23]完美世界DOTA2联赛循环赛 FTD vs PXG BO2第二场 11.01
2020/11/02 DOTA
Python实现不规则图形填充的思路
2020/02/02 Python
解决Python数据可视化中文部分显示方块问题
2020/05/16 Python
Keras 中Leaky ReLU等高级激活函数的用法
2020/07/05 Python
LORAC官网:美国彩妆品牌
2019/08/27 全球购物
广告业务员岗位职责
2014/02/06 职场文书
退休教师欢送会主持词
2014/03/31 职场文书
英语教育专业毕业生求职信
2014/08/28 职场文书
银行转正自我鉴定
2014/09/29 职场文书
社区节水倡议书
2015/04/29 职场文书
2015年医院药剂科工作总结
2015/05/04 职场文书
导游词之苏州盘门景区
2019/11/12 职场文书
Node实现搜索框进行模糊查询
2021/06/28 Javascript
golang fmt格式“占位符”的实例用法详解
2021/07/04 Golang