axios 写为 Vue 的原型对象和直接挂载到 window 上有什么区别?

2019-03-21 22:50:45 +08:00
 aoscici2000

如题, 开始设置好 axios 之后就直接写入到 Vue 原型对象上去, 调用时一直就习惯了 this.的方式使用, 后来因为 store 要用也习惯性的 this 调用就出错了, 那如果我一开始就直接设置到 window.axios = axios 上去呢, 二者有什么区别? 感觉用起来也方便很多啊. 为何之前查文档的时候好像没几个这样用的 ?

3782 次点击
所在节点    Vue.js
4 条回复
noe132
2019-03-21 22:58:15 +08:00
store 也可以加啊。
import axios from 'axios'

const store = new Store()
store.$axios = axios

像 nuxt.js 这样
https://github.com/nuxt/nuxt.js/blob/65b8148a3d5ee4782d0cdcb585a3217e4e74d89c/lib/app/index.js#L52
rawidn
2019-03-21 23:22:46 +08:00
你觉得在自家拉屎好还是在大街上拉屎好
ODD10
2019-03-21 23:47:45 +08:00
akatquas
2019-03-21 23:50:25 +08:00
因为...没有设计模式

什么东西都喜欢往全局(不仅仅限于 window )下面挂载...

缺少分层和模块化

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/547212

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX