最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

vue2.0 axios跨域并渲染的問(wèn)題解決方法

 更新時(shí)間:2018年03月08日 14:26:10   作者:DeadPool丶丶  
下面小編就為大家分享一篇vue2.0 axios跨域并渲染的問(wèn)題解決方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧

(用的腳手架vue-cli)

第一步: 在main.js中如下聲明使用

import axios from
'axios';
Vue.prototype.$axios=axios;

那么在其他vue組件中就可以this.$axios調(diào)用使用

第二步:在webpack配置一下proxyTable(config之下的index.js)

dev:
 { 
加入以下
proxyTable:
{
'/api':
{
target:
'http://api.douban.com',//設(shè)置你調(diào)用的接口域名和端口號(hào)
 別忘了加http 
changeOrigin:
true,
pathRewrite:
 { 
'^/api':
'/'//這里理解成用‘/api'代替target里面的地址,后面組件中我們掉接口時(shí)直接用api代替
 
比如我要調(diào)用'http://api.douban.com/v2/movie/top250',直接寫(xiě)‘/api/v2/movie/top250'即可
}
}
},

第三步:

試一下,跨域成功了,但是注意了,這只是開(kāi)發(fā)環(huán)境(dev)中解決了跨域問(wèn)題,生產(chǎn)環(huán)境中真正部署到服務(wù)器上如果是非同源還是存在跨域問(wèn)題,如我們部署的服務(wù)器端口是3001,需要前后端聯(lián)調(diào),第一步前端我們可以分生產(chǎn)production和開(kāi)發(fā)development兩種環(huán)境分別測(cè)試,在config/dev.env.js和prod.env.js里也就是開(kāi)發(fā)/生產(chǎn)環(huán)境下分別配置一下請(qǐng)求的地址API_HOST,開(kāi)發(fā)環(huán)境中我們用上面配置的代理地址api,生產(chǎn)環(huán)境下用正常的接口地址,所以這樣配置

module.exports = merge(prodEnv, {
 NODE_ENV: '"development"',//開(kāi)發(fā)環(huán)境
 API_HOST:"/api/"
})
module.exports = {
 NODE_ENV: '"production"',//生產(chǎn)環(huán)境
 API_HOST:'"http://api.douban.com"'
}

當(dāng)然不管是開(kāi)發(fā)還是生產(chǎn)環(huán)境都可以直接請(qǐng)求http://api.douban.com。配置好之后測(cè)試時(shí)程序會(huì)自動(dòng)判斷當(dāng)前是開(kāi)發(fā)還是生產(chǎn)環(huán)境,然后自動(dòng)匹配API_HOST,我們?cè)谌魏谓M件里都能用process.env.API_HOST來(lái)使用地址如

instance.post(process.env.API_HOST+'user/login', this.form)

然后第二步后端服務(wù)器配置一下cros跨域即可,就是access-control-allow-origin:*允許所有訪問(wèn)的意思。綜上:開(kāi)發(fā)的環(huán)境下我們前端可以自己配置個(gè)proxy代理就能跨域了,真正的生產(chǎn)環(huán)境下還需要后端的配合的。某大神說(shuō):此方法ie9及以下不好使,如果需要兼容,最好的辦法是后端在服務(wù)器端口加個(gè)代理,效果類似開(kāi)發(fā)時(shí)webpack的代理。

第四步:

<template>
<div>
  <ul>
    <li v-for="item in movieArr">
      <span>{{item.title}}</span>
    </li>
  </ul>
  <button @click="sayOut">渲染</button>
</div>
</template>
<script>
export default {
 data () {
  return {
    movieArr : []
  }
 },
 methods: {
   sayOut () {
     this.$axios.get('/api/v2/movie/top250')
    .then((response) => {
       console.log(response.data.subjects)
       this.movieArr = response.data.subjects // 這里要強(qiáng)調(diào)一下這個(gè)this 箭頭函數(shù)指的是它的父級(jí)也就是vue實(shí)例 然后不用箭頭函數(shù)的話 this是一個(gè)undefined 無(wú)法.movieArr來(lái)給他賦值 這里要注意一下 我被坑了半天 希望小伙伴不要被坑
    })
   }
 }
}
</script>
<!-- Add "scoped" attribute to limit CSS to this component only -->
<style scoped>
</style>

以上這篇vue2.0 axios跨域并渲染的問(wèn)題解決方法就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 使用Vue.set()方法實(shí)現(xiàn)響應(yīng)式修改數(shù)組數(shù)據(jù)步驟

    使用Vue.set()方法實(shí)現(xiàn)響應(yīng)式修改數(shù)組數(shù)據(jù)步驟

    今天小編就為大家分享一篇使用Vue.set()方法實(shí)現(xiàn)響應(yīng)式修改數(shù)組數(shù)據(jù)步驟,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-11-11
  • vue使用一些外部插件及樣式的配置代碼

    vue使用一些外部插件及樣式的配置代碼

    這篇文章主要介紹了vue使用一些外部插件及樣式的配置代碼,本文分步驟實(shí)例圖文相結(jié)合給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-11-11
  • vue3中使用keepAlive緩存路由組件不生效的問(wèn)題解決

    vue3中使用keepAlive緩存路由組件不生效的問(wèn)題解決

    這篇文章主要介紹了vue3中使用keepAlive緩存路由組件不生效的問(wèn)題解決,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2024-06-06
  • 利用Vue實(shí)現(xiàn)卡牌翻轉(zhuǎn)的特效

    利用Vue實(shí)現(xiàn)卡牌翻轉(zhuǎn)的特效

    這篇文章主要介紹了如何利用Vue實(shí)現(xiàn)一個(gè)春節(jié)抽福卡頁(yè)面,采用了卡牌翻轉(zhuǎn)的形式。文中的實(shí)現(xiàn)方法講解詳細(xì),快跟隨小編一起學(xué)習(xí)一下吧
    2022-02-02
  • vue實(shí)現(xiàn)背景圖片鋪滿整個(gè)屏幕(適配所有機(jī)型)

    vue實(shí)現(xiàn)背景圖片鋪滿整個(gè)屏幕(適配所有機(jī)型)

    在網(wǎng)頁(yè)設(shè)計(jì)中,背景全屏是一種常見(jiàn)的視覺(jué)效果,通過(guò)正確的CSS樣式設(shè)置,可以實(shí)現(xiàn)背景全屏且內(nèi)容在固定一屏大小內(nèi)完全顯示,如果內(nèi)容超出一屏,則可以通過(guò)滾動(dòng)條查看剩余內(nèi)容,這種設(shè)計(jì)可以提升用戶的瀏覽體驗(yàn),使網(wǎng)頁(yè)看起來(lái)更加整潔和專業(yè)
    2024-10-10
  • vue2.x,vue3.x使用provide/inject注入的區(qū)別說(shuō)明

    vue2.x,vue3.x使用provide/inject注入的區(qū)別說(shuō)明

    這篇文章主要介紹了vue2.x,vue3.x使用provide/inject注入的區(qū)別說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-04-04
  • Vue監(jiān)聽(tīng)頁(yè)面變化的實(shí)現(xiàn)方法小結(jié)

    Vue監(jiān)聽(tīng)頁(yè)面變化的實(shí)現(xiàn)方法小結(jié)

    在Vue.js應(yīng)用開(kāi)發(fā)過(guò)程中,監(jiān)聽(tīng)頁(yè)面變化是一個(gè)非常常見(jiàn)的需求,無(wú)論是為了響應(yīng)用戶交互、優(yōu)化性能,還是實(shí)現(xiàn)復(fù)雜的業(yè)務(wù)邏輯,監(jiān)聽(tīng)頁(yè)面變化的能力都是不可或缺的,本文將詳細(xì)介紹如何在Vue項(xiàng)目中實(shí)現(xiàn)頁(yè)面變化監(jiān)聽(tīng),需要的朋友可以參考下
    2024-10-10
  • 使用this.$nextTick()獲取不到數(shù)據(jù)更新后的this.$refs.xxx.及場(chǎng)景分析

    使用this.$nextTick()獲取不到數(shù)據(jù)更新后的this.$refs.xxx.及場(chǎng)景分析

    今天遇到了這樣一個(gè)場(chǎng)景,在數(shù)據(jù)更新之后,使用this.$nextTick(()=>{console.log(this.$refs.xxx)}) 獲取不到改dom,但是用setTimeout能夠獲取到,在此記錄一下,感興趣的朋友跟隨小編一起看看吧
    2023-02-02
  • Vue中為什么不推薦用index做key詳解

    Vue中為什么不推薦用index做key詳解

    Vue中使用虛擬dom且根據(jù)diff算法進(jìn)行新舊DOM對(duì)比,從而更新真實(shí) dom,key是虛擬DOM對(duì)象的唯一標(biāo)識(shí),在diff算法中key起著極其重要的作用,下面這篇文章主要給大家介紹了關(guān)于Vue中為什么不推薦用index做key的相關(guān)資料,需要的朋友可以參考下
    2022-09-09
  • vue使用vue-i18n實(shí)現(xiàn)國(guó)際化的實(shí)現(xiàn)代碼

    vue使用vue-i18n實(shí)現(xiàn)國(guó)際化的實(shí)現(xiàn)代碼

    本篇文章主要介紹了vue使用vue-i18n實(shí)現(xiàn)國(guó)際化的實(shí)現(xiàn)代碼,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-04-04

最新評(píng)論

环江| 阿克陶县| 民丰县| 新源县| 秀山| 太保市| 利辛县| 万年县| 永顺县| 中牟县| 德化县| 闽清县| 漳州市| 平顺县| 桃园县| 中西区| 隆德县| 喀什市| 甘肃省| 崇州市| 柳河县| 桐梓县| 界首市| 康保县| 龙州县| 手机| 内乡县| 马边| 抚州市| 天气| 宣城市| 金沙县| 安国市| 丹棱县| 东城区| 阜阳市| 彭州市| 丰台区| 郎溪县| 汕尾市| 沐川县|