vue 전역적으로axios 작업 사용하기
문서를 자세히 보면 axios는promise 기반의 HTTP 라이브러리이고 axios는 설치 방법이 없기 때문에 vue를 사용할 수 없습니다.use () 메서드의☞ 보기vue 플러그인
그럼 모든 파일에서axios를 한 번씩 인용해야 하나요?얼마나 번거로운가!!!해결 방법은 다음과 같습니다.
1. vue-axios와 결합하여 사용
2. axios Vue의 원형 속성으로 바꾸기
3. Vuex를 결합한 액션
1. vue-axios와 결합하여 사용
vue-axios의 원본 코드를 보았는데, 이것은 vue 플러그인의 방식에 따라 쓴 것이다.그러면 vue-axios를 결합하면 vue를 사용할 수 있다.방법을 썼어요.
우선 메인 포털 파일main.js에서 참조:
import axios from 'axios'
import VueAxios from 'vue-axios'
Vue.use(VueAxios,axios);
그 다음에 사용할 수 있습니다. 구성 요소 파일의 methods에서 사용할 수 있습니다.
getNewsList(){
this.axios.get('api/getNewsList').then((response)=>{
this.newsList=response.data.data;
}).catch((response)=>{
console.log(response);
})
}
2. axios에서 Vue의 원형 속성으로 바꾸기(추천하지 않음)우선 메인 포털 파일main.js에서 참조하고 vue의 원형 체인에 연결합니다.
import axios from 'axios'
Vue.prototype.$ajax= axios
어셈블리에서 사용:
this.$ajax.get('api/getNewsList')
.then((response)=>{
this.newsList=response.data.data;
}).catch((response)=>{
console.log(response);
})
Vuex를 결합한 actionvuex 창고 파일store에 있습니다.js에서 인용, 액션 추가 방법 사용
import Vue from 'Vue'
import Vuex from 'vuex'
import axios from 'axios'
Vue.use(Vuex)
const store = new Vuex.Store({
//
state: {
user: {
name: 'xiaoming'
}
},
actions: {
// ajax
login (context) {
axios({
method: 'post',
url: '/user',
data: context.state.user
})
}
}
})
export default store
구성 요소에서 요청을 보낼 때this.$를 사용해야 합니다store.dispatch
methods: {
submitForm () {
this.$store.dispatch('login')
}
}
추가 정보: ElementUI는 VUE에서 main을 구성합니다.js와axios의 관계1. main에서js:
import ElementUI from 'element-ui'
Vue.use(ElementUI)
2. main에서js에서 데이터 요청axios는 여기서 설정할 수 없습니다
상기 vue에서 전역적으로axios를 사용하는 조작은 바로 편집자가 여러분에게 공유한 모든 내용입니다. 여러분께 참고가 되고 저희를 많이 사랑해 주시기 바랍니다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Fastapi websocket 및 vue 3(Composition API)1부: FastAPI virtualenv 만들기(선택 사항) FastAPI 및 필요한 모든 것을 다음과 같이 설치하십시오. 생성main.py 파일 및 실행 - 브라우저에서 이 링크 열기http://127.0.0.1:...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.