当前位置:首页 > VUE

vue 实现

2026-03-06 21:50:10VUE

Vue 实现的基本步骤

安装 Vue.js 可以通过 CDN 或 npm 等方式。使用 npm 安装时,运行以下命令:

npm install vue

在项目中引入 Vue.js:

import Vue from 'vue'

创建一个 Vue 实例:

new Vue({
  el: '#app',
  data: {
    message: 'Hello Vue!'
  }
})

数据绑定与模板语法

Vue 使用双大括号语法进行文本插值:

<div id="app">
  {{ message }}
</div>

通过 v-bind 指令绑定属性:

<div v-bind:title="message">
  鼠标悬停查看动态提示
</div>

条件与循环渲染

使用 v-if 进行条件渲染:

<p v-if="seen">现在你看到我了</p>

使用 v-for 进行列表渲染:

<ul>
  <li v-for="item in items">{{ item.text }}</li>
</ul>

事件处理

通过 v-on 指令监听 DOM 事件:

<button v-on:click="reverseMessage">反转消息</button>

在 Vue 实例中定义方法:

methods: {
  reverseMessage: function () {
    this.message = this.message.split('').reverse().join('')
  }
}

表单输入绑定

使用 v-model 实现双向数据绑定:

<input v-model="message" placeholder="编辑我">
<p>输入的内容是:{{ message }}</p>

组件化开发

注册一个全局组件:

vue 实现

Vue.component('todo-item', {
  props: ['todo'],
  template: '<li>{{ todo.text }}</li>'
})

在模板中使用组件:

<ol>
  <todo-item v-for="item in items" v-bind:todo="item"></todo-item>
</ol>

生命周期钩子

常用的生命周期钩子包括 created 和 mounted:

new Vue({
  data: {
    a: 1
  },
  created: function () {
    console.log('a is: ' + this.a)
  },
  mounted: function () {
    console.log('组件已挂载')
  }
})

计算属性和侦听器

定义计算属性:

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

使用侦听器 watch:

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

Vue CLI 项目搭建

安装 Vue CLI:

npm install -g @vue/cli

创建新项目:

vue 实现

vue create my-project

运行开发服务器:

cd my-project
npm run serve

单文件组件

一个典型的 .vue 文件结构:

<template>
  <div class="example">{{ msg }}</div>
</template>

<script>
export default {
  data () {
    return {
      msg: 'Hello world!'
    }
  }
}
</script>

<style>
.example {
  color: red;
}
</style>

Vue Router 配置

安装 Vue Router:

npm install vue-router

基本路由配置:

import Vue from 'vue'
import Router from 'vue-router'
import Home from './views/Home.vue'

Vue.use(Router)

export default new Router({
  routes: [
    {
      path: '/',
      name: 'home',
      component: Home
    }
  ]
})

Vuex 状态管理

安装 Vuex:

npm install vuex

创建 store:

import Vue from 'vue'
import Vuex from 'vuex'

Vue.use(Vuex)

export default new Vuex.Store({
  state: {
    count: 0
  },
  mutations: {
    increment (state) {
      state.count++
    }
  }
})

标签: vue
分享给朋友:

相关文章

vue实现防抖节流

vue实现防抖节流

Vue 中实现防抖(Debounce) 防抖的核心是延迟执行函数,在连续触发时取消前一次的调用,只执行最后一次。适用于输入框搜索、窗口大小调整等场景。 方法1:使用 Lodash 的 _.debou…

vue实现管道

vue实现管道

Vue 中实现管道(Pipe)功能 在 Vue 中可以通过过滤器(Filters)或计算属性(Computed Properties)实现类似管道的功能,将数据经过多个处理步骤后输出。 使用过滤器(…

vue compile 实现

vue compile 实现

Vue 编译实现原理 Vue 的编译过程将模板字符串转换为渲染函数,主要分为解析、优化和代码生成三个阶段。 解析阶段(Parse) 将模板字符串转换为抽象语法树(AST)。Vue 使用正则表达式和有…

vue实现订单

vue实现订单

Vue 实现订单功能 订单数据结构设计 订单数据通常包含以下字段: order: { id: String, // 订单ID userId: String,…

vue拖拽实现

vue拖拽实现

Vue 拖拽实现方法 使用 HTML5 原生拖拽 API HTML5 提供了原生拖拽 API,可以通过 draggable 属性、dragstart、dragend、dragover 和 drop 事…

vue实现计算

vue实现计算

Vue 实现计算的方法 在 Vue 中实现计算功能可以通过多种方式完成,主要包括计算属性(computed)、方法(methods)和侦听器(watch)。以下是具体的实现方法: 计算属性(Comp…