当前位置:首页 > VUE

vue实现的例子

2026-01-17 07:48:03VUE

以下是 Vue.js 实现常见功能的几个示例,涵盖基础到进阶场景:

vue实现的例子

基础数据绑定与事件处理

<template>
  <div>
    <input v-model="message" placeholder="输入内容">
    <p>{{ message }}</p>
    <button @click="reverseMessage">反转文本</button>
  </div>
</template>

<script>
export default {
  data() {
    return {
      message: ''
    }
  },
  methods: {
    reverseMessage() {
      this.message = this.message.split('').reverse().join('')
    }
  }
}
</script>

条件渲染与列表渲染

<template>
  <div>
    <ul>
      <li v-for="(item, index) in items" :key="index">
        {{ item.text }}
        <span v-if="item.completed">✓</span>
      </li>
    </ul>
    <button @click="show = !show">切换显示</button>
    <p v-show="show">动态显示的内容</p>
  </div>
</template>

<script>
export default {
  data() {
    return {
      items: [
        { text: '学习 Vue', completed: true },
        { text: '项目实践', completed: false }
      ],
      show: true
    }
  }
}
</script>

组件通信示例

父组件:

vue实现的例子

<template>
  <div>
    <ChildComponent 
      :title="parentTitle"
      @update-title="handleUpdate"
    />
  </div>
</template>

<script>
import ChildComponent from './ChildComponent.vue'

export default {
  components: { ChildComponent },
  data() {
    return {
      parentTitle: '初始标题'
    }
  },
  methods: {
    handleUpdate(newTitle) {
      this.parentTitle = newTitle
    }
  }
}
</script>

子组件:

<template>
  <div>
    <h3>{{ title }}</h3>
    <input v-model="localTitle">
    <button @click="updateTitle">更新标题</button>
  </div>
</template>

<script>
export default {
  props: ['title'],
  data() {
    return {
      localTitle: this.title
    }
  },
  methods: {
    updateTitle() {
      this.$emit('update-title', this.localTitle)
    }
  }
}
</script>

Vue 3 Composition API 示例

<template>
  <div>
    <p>计数: {{ count }}</p>
    <button @click="increment">增加</button>
    <p>计算属性: {{ doubled }}</p>
  </div>
</template>

<script>
import { ref, computed } from 'vue'

export default {
  setup() {
    const count = ref(0)

    const increment = () => {
      count.value++
    }

    const doubled = computed(() => count.value * 2)

    return {
      count,
      increment,
      doubled
    }
  }
}
</script>

使用 Vue Router

// router.js
import { createRouter, createWebHistory } from 'vue-router'
import Home from './views/Home.vue'
import About from './views/About.vue'

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

const router = createRouter({
  history: createWebHistory(),
  routes
})

export default router

状态管理 (Vuex)

// store.js
import { createStore } from 'vuex'

export default createStore({
  state: {
    count: 0
  },
  mutations: {
    increment(state) {
      state.count++
    }
  },
  actions: {
    incrementAsync({ commit }) {
      setTimeout(() => {
        commit('increment')
      }, 1000)
    }
  },
  getters: {
    doubleCount: state => state.count * 2
  }
})

标签: 例子vue
分享给朋友:

相关文章

vue实现边框

vue实现边框

Vue 实现边框的方法 在 Vue 中实现边框效果可以通过多种方式完成,包括内联样式、CSS 类绑定、动态样式以及使用第三方 UI 库。以下是几种常见的实现方法。 内联样式绑定 使用 Vue 的 :…

vue组件实现

vue组件实现

Vue 组件实现基础 Vue 组件是 Vue.js 的核心特性之一,允许将 UI 拆分为独立、可复用的模块。组件的实现包括定义、注册、数据传递和生命周期管理等。 定义组件 组件可以通过单文件组件(.…

ssh vue 实现

ssh vue 实现

使用SSH连接Vue项目部署的服务器 在Vue项目开发或部署过程中,可能需要通过SSH连接到远程服务器进行配置或维护。以下是实现SSH连接并部署Vue项目的关键步骤: 生成SSH密钥对 在本地终端运…

vue实现路由

vue实现路由

Vue 路由的实现方法 Vue 路由可以通过 Vue Router 库来实现,Vue Router 是 Vue.js 官方的路由管理器,用于构建单页面应用(SPA)。 安装 Vue Router 通…

vue 全景实现

vue 全景实现

Vue 全景实现方案 在Vue中实现全景效果,通常需要结合WebGL或第三方库来处理3D场景渲染。以下是几种常见方法: 使用Three.js库 Three.js是一个强大的WebGL库,适合创建3D…

vue实现tree

vue实现tree

Vue 实现 Tree 组件 使用 Vue 实现 Tree 组件可以通过递归组件的方式来实现层级结构展示。以下是一个完整的实现方法: 基础递归组件实现 创建 Tree 组件文件 Tree.vue,使…