Vue常用方法汇总

本文详细介绍了Vue.js中的关键概念,如data用于定义组件数据,methods定义组件方法,computed计算属性,watch数据变化监听,以及组件的生命周期钩子,帮助开发者理解和使用Vue构建用户界面。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Vue.js 是一个用于构建用户界面的渐进式框架。以下是一些常用的 Vue 方法及其详细说明和代码示例:

Vue 方法及其详细说明

  1. data(): 用于定义组件的数据对象。数据对象可以包含任意类型的属性,如字符串、数字、布尔值、数组、对象等。
new Vue({
  el: '#app',
  data: {
    message: 'Hello Vue!'
  }
})
  1. methods: 用于定义组件的方法。方法可以包含任意数量的参数,并在模板中通过 v-on 指令或简写为 @ 来调用。
<template>
  <div>
    <p>{{ message }}</p>
    <button @click="showMessage">点击显示消息</button>
  </div>
</template>

<script>
export default {
  data() {
    return {
      message: 'Hello Vue!'
    }
  },
  methods: {
    showMessage() {
      alert(this.message);
    }
  }
}
</script>
  1. computed: 用于定义计算属性。计算属性是基于其他数据属性进行计算得到的,它们的结果会被缓存,只有在依赖的数据发生变化时才会重新计算。
export default {
  data() {
    return {
      firstName: 'John',
      lastName: 'Doe'
    }
  },
  computed: {
    fullName() {
      return this.firstName + ' ' + this.lastName;
    }
  }
}
  1. watch: 用于监听数据的变化。当指定的数据发生变化时,会执行一个函数。可以使用 immediate 选项来指定是否立即执行回调函数。
export default {
  data() {
    return {
      message: 'Hello Vue!'
    }
  },
  watch: {
    message(newVal, oldVal) {
      console.log('message changed from', oldVal, 'to', newVal);
    }
  }
}
  1. mounted(): 在组件挂载到 DOM 后执行的生命周期钩子。可以在此处执行一些初始化操作,如获取数据、设置事件监听器等。
export default {
  mounted() {
    console.log('Component mounted');
  }
}
  1. beforeDestroy(): 在组件销毁之前执行的生命周期钩子。可以在此处执行一些清理操作,如取消事件监听器、清除定时器等。
export default {
  beforeDestroy() {
    console.log('Component about to be destroyed');
  }
}

Vue.js 是一个用于构建用户界面的渐进式框架。以下是一些常用的 Vue 方法及其详细说明和代码示例:

  1. new Vue(): 创建一个新的 Vue 实例。
const app = new Vue({
  el: '#app',
  data: {
    message: 'Hello Vue!'
  }
})
  1. data: 定义组件的数据对象。
data() {
  return {
    message: 'Hello Vue!'
  }
}
  1. methods: 定义组件的方法。
methods: {
  showMessage() {
    alert(this.message);
  }
}
  1. computed: 定义计算属性。
computed: {
  reversedMessage() {
    return this.message.split('').reverse().join('');
  }
}
  1. watch: 监听数据的变化。
watch: {
  message(newVal, oldVal) {
    console.log('message changed from', oldVal, 'to', newVal);
  }
}
  1. mounted: 在组件挂载到 DOM 后执行的生命周期钩子。
mounted() {
  console.log('Component mounted');
}
  1. beforeDestroy: 在组件销毁之前执行的生命周期钩子。
beforeDestroy() {
  console.log('Component about to be destroyed');
}
  1. created: 在组件创建完成后立即执行的生命周期钩子。
created() {
  console.log('Component created');
}
  1. updated: 在组件更新时执行的生命周期钩子。
updated() {
  console.log('Component updated');
}
  1. destroyed: 在组件销毁时执行的生命周期钩子。
destroyed() {
  console.log('Component destroyed');
}
  1. props: 定义组件的属性。
props: {
  message: String
}
  1. components: 注册全局组件。
components: {
  MyComponent: { /* ... */ }
}
  1. directives: 注册自定义指令。
directives: {
  focus: { /* ... */ }
}
  1. filters: 注册自定义过滤器。
filters: {
  reverse: function (value) {
    return value.split('').reverse().join('');
  }
}
  1. mixins: 混入其他选项。
mixins: [/* ... */]
  1. provide: 向子组件提供数据。
provide() {
  return {
    message: 'Hello from parent component'
  }
}
  1. inject: 从父组件接收数据。
inject: ['message']
  1. ref: 创建一个响应式的引用。
const myRef = ref('Hello Vue!')
  1. nextTick: 在下一个 DOM 更新周期之后执行回调函数。
nextTick(() => {
  console.log('This will run after the next DOM update cycle');
})
  1. onMounted: 在组件挂载到 DOM 后立即执行的生命周期钩子。
onMounted(() => {
  console.log('Component mounted');
})
  1. onUpdated: 在组件更新时执行的生命周期钩子。
onUpdated(() => {
  console.log('Component updated');
})
  1. onBeforeUpdate: 在组件更新前执行的生命周期钩子。
onBeforeUpdate(() => {
  console.log('Component about to update');
})
  1. onUnmounted: 在组件卸载时执行的生命周期钩子。
onUnmounted(() => {
  console.log('Component unmounted');
})
  1. onActivated: 在组件被激活时执行的生命周期钩子。
onActivated(() => {
  console.log('Component activated');
})
  1. onDeactivated: 在组件被停用时执行的生命周期钩子。
onDeactivated(() => {
  console.log('Component deactivated');
})
  1. onErrorCaptured: 捕获错误并处理。
onErrorCaptured(error, instance, info) {
  console.log('Error captured:', error);
}
  1. onSuspended: 在组件暂停时执行的生命周期钩子。
onSuspended(() => {
  console.log('Component suspended');
})
  1. onReactivated: 在组件恢复时执行的生命周期钩子。
onReactivated(() => {
  console.log('Component reactivated');
})
  1. onRendered: 在组件渲染完成后执行的生命周期钩子。
onRendered(() => {
  console.log('Component rendered');
})
  1. onDestroyed: 在组件销毁时执行的生命周期钩子。
onDestroyed(() => {
  console.log('Component destroyed');
})

页面渲染

Vue.js是一个流行的JavaScript框架,用于构建用户界面。以下是一些Vue.js的常用方法和代码示例:

  1. v-model: 双向数据绑定,将表单元素的值与Vue实例的数据属性进行绑定。
<input v-model="message" type="text">
  1. v-ifv-else-ifv-else: 条件渲染,根据条件判断来决定是否渲染元素。
<div v-if="isShown">
  <p>This is shown if isShown is true.</p>
</div>
<div v-else-if="isHidden">
  <p>This is shown if isHidden is true and isShown is false.</p>
</div>
<div v-else>
  <p>This is shown if isShown and isHidden are false.</p>
</div>
  1. v-for: 列表渲染,用于在模板中渲染列表数据。
<ul>
  <li v-for="item in items" :key="item.id">{{ item.name }}</li>
</ul>
  1. v-on: 监听事件,用于监听DOM事件并在触发时执行相应的JavaScript代码。
<button v-on:click="increment">Increment</button>
  1. v-bind: 绑定属性,用于动态地绑定一个或多个属性到Vue实例的数据属性上。
<div v-bind:class="{ active: isActive }"></div>
  1. v-text: 更新元素的textContent。
<p v-text="message"></p>
  1. v-html: 更新元素的innerHTML。
<div v-html="content"></div>
  1. v-show: 根据表达式的值来切换元素的display属性。
<div v-show="isShown">This is shown if isShown is true.</div>
vue常用方法总结 第一章 Vue核心知识讲解 5 第二节 引包、留坑、实例化 、插值表达式{{}} 5 1. 引包 5 2. 留坑 5 3. 实例化 5 4. 插值表达式{{ }} 5 第三节 熟悉及使用常用指令 5 1. 什么是指令 5 2. 常用的指令有哪些,及怎么使用这些指令 6 第四节 阐述vue单双向数据流及事件绑定 6 1. vue单向数据流绑定属性值 v-bind: (属性) 简写 :(属性) 6 2. vue双向数据流 v-model 只作用于有value属性的元素 7 3. 事件绑定v-on:事件名="表达式||函数名" 简写 @事件名="表达式||函数名" 8 4. 总结 8 第五节 过滤器 8 1、过滤器有全局过滤器和组件内的过滤器 应用 {{ msg | 过滤器名}} 8 2、 vue中的this是vue封装好给我们使用的,跟平常方法里面的this是不同的 9 第六节 数据监听watch(深度监听)计算属性computed 9 watch监听单个,computed监听多个 9 总结: 10 第二章 组件化开发知识介绍 11 第一节 组件化开发 11 1、 创建组件的两种方式 11 局部声明 11 2、组件类型(组件开发三步曲:声明、注册、使用 ) 11 第二节 slot插槽和ref、$parent (重点) 11 1、slot插槽 11 2、ref获取子组件实例 12 第三节 父子组件的通信 (核心) 13 1、父传子 14 2、子传父 14 第四节 非父子组件之间的通信 14 简介:建立Bus总线机制实施非父子组件通讯 14 3、回调函数写法 16 第五节 vue的生命周期 17 1、需要频繁的创建和销毁组件 17 2、组件缓存 17 3、成对比较 17 第三章 Vue核心插件之路由模块 18 第一节 路由的跳转原理(哈希模式) 18 1、单页应用的路由模式有两种(哈希模式、history模式) 19 2、 哈希模式原理 19 3、建议的选择:(小D课堂课程) 19 第二节 安装和使用路由 19 第三节 路由的跳转 20 1、路由的跳转方式2种: 20 2、区别: 20 3、vue-router中的对象:$route $router 21 第四节 路由的传参和取参 21 1. 查询参 21 2. 路由参数 21 3、js跳转路由传参和标签传参,路由相同而参数不同时页面不做刷新的问题 22 总结: 22 第五节 嵌套路由(Children) 23 第六节 路由守卫 23 第五章 Vue全家桶各部分核⼼知识详解 24 第1节 构建vue项⽬的利器—脚⼿架vue-cli3 24 1、安装vue-cli3 24 2、创建项⽬ 24 3、 vue.config.js ⼿动在根⽬录新建⼀个vue.config.js⽂件 24 第2节 ⽗⼦组件传值(参考第二章第2、3节) 25 第3节 非⽗⼦组件传值(参考第二章第4节) 25 1. 事件总线(参考第二章第4节) 25 2. $attrs / $listeners 25 3. Vuex (详见第5节) 25 第4节 玩转单⻚⾯应⽤的控制中⼼—vue-router(与第三章基本差不多) 26 梦学谷第137课ElementUI实现页面横向指示导航,比小D课堂的那种写法要好点 26 1、路由的基本配置 26 2、路由的跳转 26 3、动态路由 27 4、嵌套路由 27 5、导航守卫 27 6、路由懒加载 28 第5节 状态管理中⼼—vuex的基础⽤法(官方文档,非常好用) 28  State 28  Mutations 28  Actions 28  vuex⾥包含的基本参数 28  还有别的mapState这些很好用 29 import { mapState, mapMutations } from "vuex";(导入非默认成员) 29 其实是ES6语法,详见梦学谷89课 29 第6节 状态管理中⼼—vuex的⾼级⽤法 29  vuex中的计算属性—Getters 30  模块化概念—Modules 30
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一花一world

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值