有没有办法在等待来自API的数据时不停止进度栏?

时间:2019-09-07 13:42:35

标签: javascript vue.js async-await loading

我正在使用vuejs和nprogress(在页面顶部显示进度行)。我希望在等待从API加载数据时移动进度线。

async created() {
    NProgress.configure({ trickleSpeed: 30 });
    NProgress.start();
    try {
      this.results = await this.getResults(this.resultsApi);
    } catch (err) {
      this.error = err.message;
    }
    NProgress.done();
},
methods: {
    getResults(url) {
      try {
        const res = await axios.get(url);
        return res;
      } catch (err) {
        return err;
      }
    }
}

在等待数据加载时,进度行停止,但我希望它不停止移动。

1 个答案:

答案 0 :(得分:0)

您可以使用此inc()函数,但从documentation开始使用

  

递增:要递增进度条,只需使用.inc()。这个   以随机量递增它。这将永远不会达到100%:使用   每次图片加载(或类似加载)时使用。

     

NProgress.inc();

但是为此,您可以一次又一次地调用它,以使栏保持移动直到数据加载。排序到increment任意值以循环到进度栏