module.exports = {
name: 'segmentfault',
methods: {
loadData: function(uuid) {
this.$http.get('/mockjs/test', // url
{a: 1}, // params
{timeout:500} // options
).then(
// success callback
function(response) {
console.log("成功这里没问题")
},
// fail callback
function(response) {
console.log(response.status); //为0
console.log(response.statusText); //为空
console.log("黑人问号?");
}
需求:
我想实现超时后写一个回调
我的思路
如果能够知道statusText是timeout,然后我就修改data的某一个值x,然后再用watch监听x,然后来写timeout的回调。
我遇到的问题
statusText并没有显示timeout。。呵呵。。
请问大家有没有解决方法?或者其他方法?谢谢
VueResource
其實還是有一些bug
,有空再寫個 PR ...研究了下源碼,可以透過一些方式實現你要的結果,首先是設置
timeout
,會觸發timeout interceptor
這是原本的
timeout interceptor
在不修改源碼的前提下,我們要繞過原本的
timeout interceptor
,自己實現一個timeout interceptor
的流程 ,所幸是作者提供了增加自定義interceptor
的方法,下面是我的實現方式,有兩種,可以改成其他符合你需求的jsFiddle
jsFiddle