首页  >  问答  >  正文

javascript - vue如何在进入下一个页面前请求数据后如果code不等于200就不进入下一个页面?

数据是在进入页面之前请求的,这里我就有一个需求,就是如果后端的code不等于200就提示用户一些错误信息,同时阻止用户进入下一个页面。看了下官网如果想中断导航可以用next(false),但是这地方我return false为什么不行,求解。

beforeRouteEnter (to, from, next) {
        Vue.$uop.loading.show({
          text: '加载中'
        })
        reqData.req({
          apiName: 'getAddress'
        }).then((res) => {
          next((vm) => {
            vm.$uop.loading.hide()
            res = res.data
            if (res && res.code !== 200) {
                vm.$uop.toast.show({
                    type: 'text',
                    text: res.message
                })
                return false // 这里怎么写才能不进入下一个页面
            }
          })
        }).catch((error) => {
          Vue.$uop.loading.hide()
          Vue.$uop.toast.show({
            type: 'text',
            text: '请求地址数据异常'
          })
        })
PHP中文网PHP中文网2710 天前538

全部回复(1)我来回复

  • 阿神

    阿神2017-05-19 10:30:05

    return false // 这里怎么写才能不进入下一个页面

    next(false)

    else

    next()

    回复
    0
  • 取消回复