Vue.js ready()方法不会在vue组件中调用

问题描述 投票:4回答:2

我正在使用Webpack bundler来提供基于Vue 2.0的前端。问题是组件中的方法ready没有被调用。我是否需要在组件上添加一些额外的手表或类似的东西?

我的路由器:

import Vue from 'vue'
import VueRouter from 'vue-router'
import VueResource from 'vue-resource'

import Register from './views/auth/register.vue'

Vue.use(VueRouter);
Vue.use(VueResource);

const routes = [
  { path: '/auth/register', component: Register } 
]

const router = new VueRouter({
  routes // short for routes: routes
})

export default router;

和我的样本组件:

<template>
    <div>
        <div class="message">{{ msg }}</div>
    </div>
</template>

<script>
export default {

    data: function () {
        return {
            msg: 'Hello from vue-loader!'
        }
    },

    ready: function() {
        console.log('test');
    }
}
</script>
webpack vue.js vue-component vue-router
2个回答
9
投票

ready()生命周期钩子方法在VueJS 2.0.x中被删除。使用mounted()created()代替。


2
投票

如果您需要在100%加载图像和文件后运行代码,请在mounted()中测试:

document.onreadystatechange = () => {
  if (document.readyState == "complete") {
    console.log('Page completed with image and files!')
    // fetch
  }
}

更多信息:MDN Api onreadystatechange

© www.soinside.com 2019 - 2024. All rights reserved.