有个疑问???
import Vue form 'vue'
import axios form 'axios' 这为何能查找的到?
Vue.prototype.$axios = axios
使用时写成这样 this.axios... 少了 $;
我的问题是在main.js中
import axios from 'axios' 怎么查找到的?
按我的理解应该是这样 import axios from '../node_moudles/aioxs/axios.js'
求教? 谢谢了
根本不明白为什么这么写,但是下面这么写axios就可以用了,望大神解答 vue.use(),和new vue()还有Vue.prototype的区别各是什么,如何在前端工程中正确的使用 axios,如果用引入js文件的方式,在页面直接使用axios就可以,但为什么用前端工程安装的方式就不可以呢,就会出现 axios 找不到的情况
转自http://www.cnblogs.com/wisewr...
方案一:改写原型链
首先在 main.js 中引入 axios
import axios from 'axios'
这时候如果在其它的组件中,是无法使用 axios 命令的。但如果将 axios 改写为 Vue 的原型属性,就能解决这个问题
Vue.prototype.$ajax = axios
在 main.js 中添加了这两行代码之后,就能直接在组件的 methods 中使用 $ajax 命令
复制代码
methods: {
submitForm () {
this.$ajax({
method: 'post',
url: '/user',
data: {
name: 'wise',
info: 'wrong'
}
})
}
10 回答11.3k 阅读
5 回答4.9k 阅读✓ 已解决
4 回答3.2k 阅读✓ 已解决
2 回答2.8k 阅读✓ 已解决
2 回答4.8k 阅读✓ 已解决
4 回答4.4k 阅读✓ 已解决
4 回答1.9k 阅读✓ 已解决
执行
npm ls | grep axios
,看看依赖有没有安装上。再不行重装试试。也要注意名称之类的信息不要写错了。import axios from 'axios'
可以直接找到依赖的原因是:这是模块的加载机制,直接写依赖库的名字,会到node_modules下去查找,因此不需要你指明前面的相对路径