vue的生命周期和函数式组件

vue的生命周期


生命周期


创建阶段

创建阶段生命周期的顺序:beforeCreate-->data-->created-->beforeMount-->render-->mounted

注意:vue并不承诺子组件的dom也会挂载到我们的真实dom上,所以我们需要用到this.$nextTick来把操作dom的事情放到回调中。


更新阶段

更新阶段生命周期的顺序:beforeUpdate-->render-->updated

销毁阶段


销毁阶段生命周期的顺序:beforeDestory-->destroyed

函数式组件

functional : true

无状态、无实例、没有this上下文、无生命周期

其实可以认为是一个简单的方法,一般是用来做展示用的。比如:vue中并没有提供临时变量,虽然computed帮我们在很大程度上避免了这些事情,但是计算属性有一个限制就是我们依赖的数据必须是响应式数据  ,而且我们还可能会需要一些全局的数据,为了避免重复计算,我们可以在模版中借助函数式组件做 临时变量

export default {

    functional: true,

    render: (h, ctx) => {

        return ctx.scopedSlots.default && ctx.scopedSlots.default(ctx.props || {});

    }

};

在render的时候把传递的属性返回给调用方。

<TempVar 

    :var1="`hello ${name}`" 

    :var2="destroyClock ? 'hello vue' : 'hello world'" 

        <template v-slot="{ var1, var2 }">

             {{ var1 }} 

             {{ var2 }}

         </template>

 </TempVar>

var1,var2作为临时变量,在template中随时可以使用。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 这篇笔记主要包含 Vue 2 不同于 Vue 1 或者特有的内容,还有我对于 Vue 1.0 印象不深的内容。关于...
    云之外阅读 5,215评论 0 29
  • 从接触angularjs1.x开始,使用并开发过很多组件和指令,它能极大的扩展web的业务处理能力,而且代码很简洁...
    老鼠AI大米_Java全栈阅读 3,565评论 0 4
  • 前几天想学学Vue中怎么编写可复用的组件,提到要对Vue的render函数有所了解。可仔细一想,对于Vue的ren...
    kangaroo_v阅读 116,641评论 13 171
  • 组件(Component)是Vue.js最核心的功能,也是整个架构设计最精彩的地方,当然也是最难掌握的。...
    六个周阅读 5,829评论 0 32
  • 一直觉得三十岁以下都是青春美少女,不是剩女。不想最近被我那位年方二八的闺蜜搞崩溃。 她发微信跟我说她找对象的事情。...
    Jane和小荷阅读 338评论 0 0

友情链接更多精彩内容