Vue.js在加载所有组件时运行代码

时间:2016-08-25 04:40:22

标签: javascript jquery jquery-plugins vue.js vue-router

设置

我的网站的index.html与此类似(使用路由):

<main-menu></main-menu>
<router-view></router-view>
<footer-menu><footer-menu>

我想在所有这三个组件(来自materialize.css库)中注册一些jQuery插件,并让它们在用户点击网站时发挥作用。

编辑:要明确,这不是让jQuery工作的问题,我已广泛使用jQuery,如果我点击f12并运行初始化函数,一切正常。这里的问题是弄清楚什么时候Vue.js搞乱了DOM。

我尝试了什么

注意: ready: function() {}无效,因为我正在使用路由,即使用户离开家,插件也需要工作 - &gt;浏览 - &gt;家。

取自documentation

route: {
    activate: (transition) => {
        transition.next();
        // Plugins here
    }
}

取自this SO帖子

route: {
    activate() {
        this.$nextTick(function() {
            // Plugins here
        });
    }
}

我也查看了this帖子但是我在三个顶级组件的每一个中都有未知数量的组件,我不认为手动注册它们都是一个非常好的主意

我期待发生的事情

我希望看到我的所有组件中的所有jQuery插件都能在用户点击的任何给定页面上运行,无论他们跳转多少次。

0 个答案:

没有答案