• Vue2技能树(3)-声明式渲染、指令大全、生命周期函数



    👍 点赞,你的认可是我创作的动力!

    ⭐️ 收藏,你的青睐是我努力的方向!

    ✏️ 评论,你的意见是我进步的财富!


    Vue2技能树

    Vue2技能树(1)-介绍、导入使用、响应式数据绑定、组件化开发
    vue2技能树(2)-模板语法、vue的工具链、渐进式框架
    Vue2技能树(3)-声明式渲染、指令大全、生命周期函数
    Vue2技能树(4)-插值、动态参数、指令修饰符、计算属性、侦听器

    Vue 2 声明式渲染详解

    Vue.js 2 提供了一种声明式渲染的方法,使得你可以通过简单地声明期望的结果来构建用户界面,而不必关心底层DOM操作。这种方式使得Vue 2非常易于使用和维护。以下是对Vue 2声明式渲染的多方面详细介绍。

    插值

    插值是Vue 2中最基本的声明式渲染方式。它允许你将数据绑定到模板中,以便数据的变化可以自动更新到视图中。插值使用双大括号{{ }}

    <div>
      {{ message }}
    div>
    
    • 1
    • 2
    • 3

    在这个示例中,message 是一个数据属性,它会在模板中渲染出来。

    绑定属性

    Vue 2 允许你使用 v-bind 指令来动态地绑定元素的属性。这使得你可以将数据绑定到元素的属性,从而使元素的属性值随数据的变化而变化。

    <img v-bind:src="imageUrl">
    
    • 1

    在这个示例中,src 属性的值会随 imageUrl 的变化而动态更新。

    列表渲染

    你可以使用 v-for 指令来声明式地渲染列表。这允许你循环遍历数组或对象,并为每个项目渲染相应的元素。

    <ul>
      <li v-for="item in items">{{ item }}li>
    ul>
    
    • 1
    • 2
    • 3

    在这个示例中,items 是一个数组,v-for 指令用于循环渲染列表中的每个项目。

    条件渲染

    你可以使用 v-ifv-else 指令来根据特定条件来渲染元素。这使得你能够声明式地根据条件来显示或隐藏元素。

    <div v-if="showMessage">This is a message.div>
    <div v-else>Message is hidden.div>
    
    • 1
    • 2

    在这个示例中,v-if 根据 showMessage 的值来决定要渲染哪个元素。

    事件监听

    使用 v-on 指令,你可以声明式地监听DOM事件,并在事件发生时执行特定的方法。

    <button v-on:click="handleClick">Click mebutton>
    
    • 1

    在Vue实例中,你可以定义 handleClick 方法,以响应按钮的点击事件。

    这是对Vue 2声明式渲染的多方面详细介绍。声明式渲染使得构建用户界面更加直观和易于理解,因为你只需要声明期望的结果,而不必关心如何实现它。Vue.js负责底层的DOM操作,从而简化了前端开发的复杂性。

    Vue 2 指令详解

    Vue.js 2 提供了一系列的指令,用于在模板中声明式地控制DOM元素的行为和属性。指令是Vue的核心特性之一,以下是对Vue 2的各种指令的多方面详细介绍。

    v-bind

    v-bind 指令用于动态地绑定元素的属性。你可以使用它将数据属性的值动态地设置为元素的属性。

    <img v-bind:src="imageUrl">
    
    • 1

    在这个示例中,src 属性的值将根据 imageUrl 数据属性的值来动态更新。

    v-model

    v-model 指令用于实现双向数据绑定,通常用于表单元素。它将表单元素的值与数据属性双向绑定,从而使表单输入可以影响数据,反之亦然。

    <input v-model="username">
    
    • 1

    在这个示例中,username 数据属性和输入框的值将保持同步。

    v-for

    v-for 指令用于循环渲染元素,通常与数组或对象一起使用。

    <ul>
      <li v-for="item in items">{{ item }}li>
    ul>
    
    • 1
    • 2
    • 3

    在这个示例中,v-for 用于循环渲染 items 数组中的每个元素。

    v-if 和 v-else

    v-ifv-else 指令用于条件渲染,根据给定条件来显示或隐藏元素。

    <div v-if="showMessage">This is a message.div>
    <div v-else>Message is hidden.div>
    
    • 1
    • 2

    在这个示例中,v-if 根据 showMessage 数据属性的值来决定哪个元素渲染。

    v-show

    v-show 指令也用于条件渲染,但不是隐藏元素,而是使用CSS的display属性进行隐藏和显示。

    <div v-show="showMessage">This message is shown/hidden using v-show.div>
    
    • 1

    在这个示例中,v-show 同样根据 showMessage 数据属性的值来决定是否显示元素。

    v-on

    v-on 指令用于监听DOM事件,通常与方法一起使用。你可以将一个方法绑定到一个特定的事件,以便在事件发生时执行该方法。

    <button v-on:click="handleClick">Click mebutton>
    
    • 1

    在Vue实例中,你可以定义 handleClick 方法,以响应按钮的点击事件。

    v-pre

    v-pre 指令用于跳过该元素和所有子元素的编译过程。这在需要渲染原始HTML代码时很有用,因为Vue不会解析和替换元素和子元素。

    <p v-pre>{{ rawHtml }}p>
    
    • 1

    在这个示例中,v-pre 用于保留 rawHtml 数据属性中的HTML代码。

    v-cloak

    v-cloak 指令用于保持元素及其子元素在Vue编译之前不可见。当Vue编译后,v-cloak 指令将自动移除。

    <div v-cloak>
      {{ message }}
    div>
    
    • 1
    • 2
    • 3

    这是对Vue 2的各种指令的多方面详细介绍。Vue.js的指令是一种强大的方式,用于声明式地操作DOM元素的属性和行为。它们使得前端开发更加直观和简化,同时允许你将数据和行为紧密集成到你的模板中。

    Vue 2生命周期函数详解

    Vue.js 2 的生命周期函数是在组件生命周期中执行的特定函数,允许你在不同的阶段执行自定义逻辑。这些生命周期函数可以用于管理组件的状态、资源清理、数据获取等任务。以下是对Vue 2的生命周期函数的多方面详细介绍。

    1. beforeCreate

    beforeCreate 生命周期钩子在实例初始化之后、数据观察和事件配置之前被调用。此时,组件实例被创建,但数据和事件尚未初始化。

    new Vue({
      beforeCreate() {
        // 在这里,data和events还没有被初始化
      },
    });
    
    • 1
    • 2
    • 3
    • 4
    • 5

    2. created

    created 生命周期钩子在实例创建之后,数据和事件初始化之后被调用。此时,你可以访问数据和调用方法。

    new Vue({
      created() {
        // 在这里,data和events已经被初始化
      },
    });
    
    • 1
    • 2
    • 3
    • 4
    • 5

    3. beforeMount

    beforeMount 生命周期钩子在挂载之前被调用。在这个阶段,模板已经被编译成渲染函数,但尚未应用到DOM。

    new Vue({
      beforeMount() {
        // 在这里,模板已准备好,但还没有挂载到DOM
      },
    });
    
    • 1
    • 2
    • 3
    • 4
    • 5

    4. mounted

    mounted 生命周期钩子在组件被挂载到DOM之后被调用。这是执行初始渲染的理想位置。在这个阶段,你可以访问DOM元素,执行异步操作,如数据获取。

    new Vue({
      mounted() {
        // 在这里,组件已挂载到DOM,可以访问DOM元素
      },
    });
    
    • 1
    • 2
    • 3
    • 4
    • 5

    5. beforeUpdate

    beforeUpdate 生命周期钩子在数据更新之前被调用,但DOM尚未重新渲染。这个钩子在数据变化导致的重新渲染之前执行。

    new Vue({
      beforeUpdate() {
        // 在这里,数据已更新,但DOM尚未重新渲染
      },
    });
    
    • 1
    • 2
    • 3
    • 4
    • 5

    6. updated

    updated 生命周期钩子在数据更新后,DOM被重新渲染之后被调用。这是执行DOM操作的好时机。

    new Vue({
      updated() {
        // 在这里,数据已更新,DOM也已重新渲染
      },
    });
    
    • 1
    • 2
    • 3
    • 4
    • 5

    7. beforeDestroy

    beforeDestroy 生命周期钩子在实例销毁之前被调用。在这个阶段,实例仍然可用,但可以执行清理工作。

    new Vue({
      beforeDestroy() {
        // 在这里,实例还没有销毁
      },
    });
    
    • 1
    • 2
    • 3
    • 4
    • 5

    8. destroyed

    destroyed 生命周期钩子在实例销毁之后被调用。在这个阶段,实例已经被销毁,无法访问其属性和方法。

    new Vue({
      destroyed() {
        // 在这里,实例已经被销毁,不能访问其属性和方法
      },
    });
    
    • 1
    • 2
    • 3
    • 4
    • 5

    钩子函数执行顺序

    Vue 2 的生命周期钩子函数的执行顺序如下:

    1. beforeCreate
    2. created
    3. beforeMount
    4. mounted
    5. beforeUpdate
    6. updated
    7. beforeDestroy
    8. destroyed

    这些生命周期钩子函数使得你可以在不同的阶段执行自定义逻辑,以满足组件的需求。例如,在created钩子中可以执行异步数据获取操作,而在beforeDestroy中可以进行资源清理。生命周期钩子函数是Vue 2组件的重要部分,允许你更好地控制组件的行为和状态。

  • 相关阅读:
    Java PrintWriter.write()方法具有什么功能呢?
    【技术分享】NetLogon于域内提权漏洞(CVE-2020-1472)
    详解红黑树,图文并茂
    MySQL MVCC机制详解
    Oracle故障案例 | 19C动态监听无法注册实例的处理
    云酷科技UWB定位系统:智能巡检的新方式
    SEO效果又慢又差,为什么还会有SEO从业者?
    总结 STM32 常见的一百多个知识点
    探索Lighthouse性能分数计算背后的奥秘
    自动化测试的生命周期是什么?
  • 原文地址:https://blog.csdn.net/weixin_52003205/article/details/133930658