国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術文章
文章詳情頁

vue .then和鏈式調用操作方法

瀏覽:3日期:2022-06-12 17:26:07
Vue.then一、Vue.then是什么意思

Vue.then是Vue.js框架中對于異步操作進行處理的一個方法。它與Promise結合使用,相當于Promise中的then方法,可以處理異步操作的結果,從而實現(xiàn)對后續(xù)流程的控制和處理。Vue.then方法是在Vue.js 2.1版本中引入的,目的是更好地支持異步操作。

二、Vue.then的使用

使用Vue.then方法,需要先進行異步操作,接著通過調用Promise中的then方法來對異步操作的結果進行處理。例如,在Vue.js中,可以使用Vue resource庫實現(xiàn)請求后臺數(shù)據(jù)的異步操作,代碼如下:

Vue.http.get('/api/user') .then(response => {this.users = response.body; }, response => {console.log('error'); });

上述代碼中,先進行了一個異步操作,即調用Vue.http.get方法來請求后臺數(shù)據(jù)。然后,將結果通過Promise的then方法進行處理,從而實現(xiàn)對于數(shù)據(jù)結果的控制。在這個例子中,如果響應成功,返回數(shù)據(jù)的主體內容(response.body)將被賦值給該Vue實例的users變量,否則會在控制臺輸出"error"。

vue .then和鏈式調用

1 如果下級函數(shù)存在異步操作,

并且上級函數(shù)需要等待下級函數(shù)的異步操作完成后再繼續(xù)執(zhí)行,

那么在上級函數(shù)中就需要使用 .then() 方法來處理異步操作的結果。

2在let obj = axios.get(path).then((resp => { return resp })

這個鏈式調用中,確實會有兩個返回值。

第一個值是 請求的結果axios.get(path)

第二個值是.then()中數(shù)據(jù)處理后的結果 Promise 對象 obj 。

3 .then返回值是Promise 對象

4發(fā)起異步請求:axios.get(path) 得到第一返回值處理響應結果:.then((resp) => { ... }) 得到第二返回值Promise 對象上級函數(shù)調用下級帶.then的函數(shù)必須 .then((data) => { ... })

5 上級函數(shù) 使用了.then(), 下級函數(shù)可以不使用.then,直接返回請求結果

第一種 上級函數(shù) .then() ,下級函數(shù).then() 返回處理完的數(shù)據(jù)

export function funcB() { let newData = [] newData = fetchData().then((data) => { console.log(data); // 直接使用數(shù)據(jù) return data; }); console.log(newData); } return newData;}function fetchData() { try { let path = 'dt.csv' let obj = axios.get(path).then((resp) => {// 這里處理數(shù)據(jù) return data;}) return obj; // 返回Promise 對象 } catch (error) { // 處理錯誤 console.error(error); return null; }}

第二種 上級函數(shù) .then() ,下級函數(shù)只返回請求結果

export function funcB() { let newData = [] newData = fetchData().then((data) => { // 這里處理數(shù)據(jù) console.log(data); // 在這里處理 newData return data; }); console.log(newData); } return newData;}function fetchData() { try { let path = 'dt.csv' let obj = axios.get(path) return obj; // 返回Promise 對象 } catch (error) { // 處理錯誤 console.error(error); return null; }}

到此這篇關于vue .then和鏈式調用的文章就介紹到這了,更多相關vue鏈式調用內容請搜索好吧啦網以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: JavaScript
主站蜘蛛池模板: 湖口县| 石家庄市| 福安市| 滦南县| 团风县| 竹山县| 疏勒县| 松原市| 镶黄旗| 神农架林区| 综艺| 泽州县| 甘洛县| 乌鲁木齐县| 红原县| 蓬莱市| 宁陕县| 紫金县| 黄梅县| 谷城县| 南开区| 新郑市| 玛沁县| 衡山县| 大埔区| 溧水县| 大石桥市| 元阳县| 永宁县| 伽师县| 平凉市| 化州市| 军事| 茶陵县| 石棉县| 来宾市| 比如县| 黔西| 新干县| 山东省| 湘潭市|