什么时候在Vue中使用created()方法?

时间:2018-10-15 07:05:52

标签: vue.js vuejs2 vue-component

我已经学习了Vue.js的生命周期挂钩,但是没有发现使用created()函数的任何实际情况?

我知道created()函数可以访问响应数据和事件,但是不能访问DOM元素。但是实际上我不知道如何使用它。请有人帮我提供使用Created()函数的实际方案。 预先感谢。

3 个答案:

答案 0 :(得分:2)

很多人在Vue中使用Global Event Bus模式:

https://alligator.io/vuejs/global-event-bus/

设置事件侦听器的页面示例包含以下示例:

EventBus.$on('i-got-clicked', clickCount => {
  console.log(`Oh, that's nice. It's gotten ${clickCount} clicks! :)`)
});

这是您可以在DOM模板为此特定组件完成渲染之前设置的事件。如果您等待DOM模板在此处完成,则可能会错过点击。您只是想尽快执行此操作。

就像组件触发AJAX请求一样,您不必总是等待DOM完成呈现组件。很多时候,您可以立即触发请求。那么,您为什么不希望节省一些时间并立即启动AJAX请求呢?

mounted挂钩中不需要DOM的所有内容都可以移入created挂钩,以便在Vue生命周期中尽早执行。

答案 1 :(得分:0)

在vue网站上查看this page

根据图表:

  

创建的方法将在制作组件模板之前被调用。因此您无法访问模板,但可以更改模板中应使用的值。例如,您可以将json props转换为对象或更改组件静态数据并...   “创建”与“挂载”的唯一区别在于,您可以在制作模板之前执行性能

,但请记住不要在创建的方法中更改反应数据。因为每次这些数据更改创建的方法都不会再次调用。

现在,您使用的是哪个,或者您需要的取决于您自己

答案 2 :(得分:0)

created()方法可能是进行不依赖DOM的其他数据初始化的好地方。实际上,我经常这样做。