当前位置:首页 > VUE

实现vue

2026-01-12 08:51:08VUE

Vue.js 基本实现步骤

安装 Vue.js 通过 npm 或 yarn 安装 Vue.js:

npm install vue
# 或
yarn add vue

创建 Vue 实例 在 HTML 文件中引入 Vue.js 并创建实例:

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

<script src="https://cdn.jsdelivr.net/npm/vue@2.6.14/dist/vue.js"></script>
<script>
  new Vue({
    el: '#app',
    data: {
      message: 'Hello Vue!'
    }
  })
</script>

组件化开发

单文件组件 创建 .vue 文件,包含模板、脚本和样式:

<template>
  <div>
    <h1>{{ title }}</h1>
  </div>
</template>

<script>
export default {
  data() {
    return {
      title: 'Vue Component'
    }
  }
}
</script>

<style scoped>
h1 {
  color: #42b983;
}
</style>

注册全局组件

Vue.component('my-component', {
  template: '<div>A custom component!</div>'
})

数据绑定

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

<template>
  <input v-model="message" placeholder="edit me">
  <p>Message is: {{ message }}</p>
</template>

<script>
export default {
  data() {
    return {
      message: ''
    }
  }
}
</script>

条件渲染

v-if 指令 根据条件显示或隐藏元素:

实现vue

<template>
  <div v-if="seen">Now you see me</div>
</template>

<script>
export default {
  data() {
    return {
      seen: true
    }
  }
}
</script>

列表渲染

v-for 指令 渲染数组或对象的项目列表:

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

<script>
export default {
  data() {
    return {
      items: [
        { id: 1, text: 'Learn Vue' },
        { id: 2, text: 'Build something awesome' }
      ]
    }
  }
}
</script>

事件处理

v-on 指令 监听 DOM 事件并运行方法:

<template>
  <button v-on:click="counter += 1">Add 1</button>
  <p>The button has been clicked {{ counter }} times.</p>
</template>

<script>
export default {
  data() {
    return {
      counter: 0
    }
  }
}
</script>

计算属性

计算缓存 基于响应式依赖进行缓存的计算属性:

实现vue

<template>
  <p>Original message: "{{ message }}"</p>
  <p>Computed reversed message: "{{ reversedMessage }}"</p>
</template>

<script>
export default {
  data() {
    return {
      message: 'Hello'
    }
  },
  computed: {
    reversedMessage() {
      return this.message.split('').reverse().join('')
    }
  }
}
</script>

生命周期钩子

常用钩子函数 在组件生命周期的不同阶段执行代码:

<script>
export default {
  created() {
    console.log('Component created')
  },
  mounted() {
    console.log('Component mounted to DOM')
  },
  updated() {
    console.log('Component updated')
  },
  destroyed() {
    console.log('Component destroyed')
  }
}
</script>

Vue CLI 项目搭建

创建新项目 使用 Vue CLI 快速搭建项目结构:

npm install -g @vue/cli
vue create my-project
cd my-project
npm run serve

Vue Router

基本路由配置 设置路由并创建路由视图:

import Vue from 'vue'
import VueRouter from 'vue-router'
import Home from './views/Home.vue'
import About from './views/About.vue'

Vue.use(VueRouter)

const routes = [
  { path: '/', component: Home },
  { path: '/about', component: About }
]

const router = new VueRouter({
  routes
})

new Vue({
  router
}).$mount('#app')

Vuex 状态管理

Store 创建 集中式存储管理应用的所有组件状态:

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

Vue.use(Vuex)

const store = new Vuex.Store({
  state: {
    count: 0
  },
  mutations: {
    increment(state) {
      state.count++
    }
  },
  actions: {
    increment(context) {
      context.commit('increment')
    }
  },
  getters: {
    doubleCount(state) {
      return state.count * 2
    }
  }
})

new Vue({
  store
}).$mount('#app')

标签: vue
分享给朋友:

相关文章

vue实现列表显示

vue实现列表显示

Vue 实现列表显示的方法 在 Vue 中实现列表显示通常使用 v-for 指令,结合数组或对象数据渲染动态列表。以下是几种常见的实现方式。 基本列表渲染 通过 v-for 指令遍历数组,动态生成列…

vue实现全局遮罩层

vue实现全局遮罩层

实现全局遮罩层的方法 在Vue中实现全局遮罩层可以通过多种方式完成,以下是几种常见的实现方法: 使用Vue组件创建遮罩层 创建一个遮罩层组件,通过全局注册或动态挂载的方式实现全局调用。以下是一个简单…

vue实现过滤

vue实现过滤

Vue实现过滤的方法 在Vue中实现数据过滤可以通过多种方式完成,以下是几种常见的方法: 使用计算属性过滤 计算属性是Vue中处理数据过滤的理想选择,它们基于响应式依赖进行缓存,只有在相关依赖发生改…

vue实现rtc

vue实现rtc

Vue 实现 RTC 的步骤 安装依赖 在 Vue 项目中安装 WebRTC 相关依赖,如 simple-peer 或 peerjs,用于简化 WebRTC 的实现。 运行以下命令安装 simple-…

vue实现动态

vue实现动态

Vue 实现动态路由的方法 在 Vue 中实现动态路由通常涉及以下几个关键步骤: 使用 Vue Router 的动态路由匹配 通过 Vue Router 的 :param 语法可以实现动态路由匹配。…

vue vnode实现

vue vnode实现

Vue VNode 实现原理 VNode(Virtual Node)是 Vue 的核心概念之一,用于描述真实 DOM 的轻量级虚拟表示。VNode 的实现涉及以下关键点: VNode 的基本结构 V…