当前位置:首页 > VUE

vue原生实现

2026-02-10 16:51:32VUE

以下是 Vue 原生实现常见功能的几种方法,不使用第三方库:

双向数据绑定

使用 v-model 指令实现表单输入与应用状态的双向绑定:

<input v-model="message">
<p>{{ message }}</p>

条件渲染

通过 v-ifv-show 控制元素显示:

<div v-if="isVisible">条件渲染内容</div>
<div v-show="isActive">显示控制内容</div>

列表渲染

使用 v-for 指令渲染数组或对象:

<li v-for="(item, index) in items" :key="item.id">
  {{ index }} - {{ item.text }}
</li>

事件处理

通过 v-on@ 简写绑定事件:

<button @click="handleClick">点击事件</button>

计算属性

使用 computed 处理复杂逻辑:

computed: {
  reversedMessage() {
    return this.message.split('').reverse().join('')
  }
}

侦听器

通过 watch 监听数据变化:

watch: {
  message(newVal, oldVal) {
    console.log('值变化:', oldVal, '->', newVal)
  }
}

组件通信

父子组件通过 props 和 $emit 通信:

// 父组件
<child-component :propData="parentData" @custom-event="handleEvent"/>

// 子组件
props: ['propData'],
methods: {
  triggerEvent() {
    this.$emit('custom-event', payload)
  }
}

生命周期钩子

常用生命周期示例:

created() {
  // 实例创建后调用
},
mounted() {
  // DOM挂载后调用
}

动态组件

通过 <component> 实现组件动态切换:

<component :is="currentComponent"></component>

插槽

使用插槽进行内容分发:

<!-- 父组件 -->
<child-component>
  <template v-slot:default>默认插槽内容</template>
</child-component>

<!-- 子组件 -->
<slot name="default"></slot>

自定义指令

创建自定义指令:

directives: {
  focus: {
    inserted(el) {
      el.focus()
    }
  }
}

过滤器

实现文本格式化(Vue 3 已移除,可用方法替代):

filters: {
  capitalize(value) {
    return value.charAt(0).toUpperCase() + value.slice(1)
  }
}

混入

使用 mixin 复用逻辑:

const myMixin = {
  created() {
    this.hello()
  },
  methods: {
    hello() {
      console.log('mixin方法')
    }
  }
}

这些方法涵盖了 Vue 核心功能的原生实现方式,适用于大多数基础到中级的开发场景。

vue原生实现

标签: vue
分享给朋友:

相关文章

vue实现点击页面切换

vue实现点击页面切换

实现点击页面切换功能 在Vue中实现点击页面切换功能,可以通过路由跳转或组件动态渲染两种方式完成。以下是具体实现方法: 使用Vue Router实现页面跳转 安装Vue Router后,在项目中…

vue observer实现

vue observer实现

Vue Observer 实现原理 Vue 的响应式系统核心是通过 Object.defineProperty(Vue 2)或 Proxy(Vue 3)实现的 Observer 模式。以下是关键实现细…

vue 组件实现

vue 组件实现

Vue 组件实现方法 单文件组件 (SFC) 使用 .vue 文件格式,包含模板、脚本和样式三部分: <template> <div class="example">{…

vue实现前端

vue实现前端

Vue 实现前端的核心方法与步骤 安装 Vue 项目 使用 Vue CLI 或 Vite 创建项目。Vue CLI 是传统构建工具,Vite 是新一代轻量级工具。 npm init vue@l…

vue实现mouseout

vue实现mouseout

Vue 实现 mouseout 事件的方法 在 Vue 中实现 mouseout 事件可以通过多种方式完成,以下是几种常见的方法: 使用 v-on 指令 Vue 提供了 v-on 指令(或简写为 @…

vue实现曲线

vue实现曲线

Vue 实现曲线的方法 在 Vue 中实现曲线可以通过多种方式,包括使用 SVG、Canvas 或第三方库如 D3.js、ECharts 等。以下是几种常见的方法: 使用 SVG 绘制曲线 SVG…