javascript - vue 如何使用 nprogress
阿神
阿神 2017-04-11 12:14:12
[JavaScript讨论组]

现在有这个需求,希望每次页面载入的时候,浏览器顶部有载入动画
可以叫作 top progress bar 。我现在的做法是 用 vue-progressbar 这个插件 github链接
但是我需要每个页面的ready() 和 created() 里面都要写代码,特别繁琐。

之前在 vue 论坛 看见一个人说的是 在 vue-route 里面 beforeEach 和 afterEach 使用 nprogress 。。但是我问他 就没有下文了。。
nprogress bar 的官方地址 github 连接

大家有谁用过这个????? 求教啊

阿神
阿神

闭关修行中......

全部回复(2)
巴扎黑

文档 router.beforeEach(hook)
文档 router.afterEach(hook)

router.beforeEach(function (transition) {
  NProgress.start();
});

router.afterEach(function (transition) {
  NProgress.done();
  NProgress.remove();
});

大概就是这样使用吧。beforeEachafterEachvue-router 提供的回调接口。在before启动NProgressafter删除。

PHP中文网

楼主,想问你一下,如果使用vue-progress这个插件,那么如何在路由的钩子函数如beforeEach和afterEach中调用该插件的方法呢。因为$Progress是一个全局变量,在组件中可以通过this.$Progress中调用。但是在路由钩子中,组件实例都还不存在啊,就没法调用啊。

如果是使用nprogress,是可以在路由的钩子函数中调用NProgress的方法。但是这样的话,在每个组件中必须通过

import NProgress from "nprogress"

才能引入NProgress对象啊。感觉这样很重复啊。

不知道楼主最后的解决办法是什么?

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号