前端编程艺术(5)---Vue3(从零基础到项目开发)

在现代前端开发中,Vue.js 已成为一个非常流行的框架。Vue3 引入了一些新的特性,使得开发变得更加高效和灵活。本篇文章将带你从零基础学习 Vue3,并通过实例来逐步了解其核心概念。

1. Vue3 简介

Vue.js 是一个渐进式框架,意味着你可以从简单的渐进式使用它开始,逐渐加深对其全部特性的理解。Vue3 的新特性包括组合式 API、多个根节点、性能优化等。

2. 环境搭建

首先,我们需要搭建一个 Vue3 的开发环境。你可以使用 Vue CLI 工具快速创建一个新的 Vue3 项目。

npm install -g @vue/cli
vue create my-vue3-app

在创建过程中,选择 Vue 3 配置,然后进入项目目录:

cd my-vue3-app
npm run serve

打开浏览器并访问 http://localhost:8080,你应该可以看到 Vue 的欢迎页面。

3. 基本构建块

在 Vue 3 中,组件是构建用户界面的主要部分。下面是一个简单的组件示例:

<template>
  <div>
    <h1>{{ title }}</h1>
    <button @click="increment">增加</button>
    <p>当前计数: {{ count }}</p>
  </div>
</template>

<script>
import { ref } from 'vue';

export default {
  name: 'Counter',
  setup() {
    const title = '计数器';
    const count = ref(0);

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

    return { title, count, increment };
  }
};
</script>

<style scoped>
h1 {
  color: blue;
}
</style>

在上面的代码中,我们使用了 Vue 的组合式 API。通过 ref 函数创建响应式数据 count,并通过 setup 函数将其暴露给模板。

4. 使用 Prop 和 Event

组件之间的通信主要依赖于 props 和事件。下面是父组件和子组件之间的简单交互示例。

父组件:

<template>
  <div>
    <Counter :initialCount="count" @countChanged="updateCount" />
    <p>总计数: {{ count }}</p>
  </div>
</template>

<script>
import Counter from './Counter.vue'; // 导入子组件

export default {
  components: { Counter },
  data() {
    return {
      count: 0
    };
  },
  methods: {
    updateCount(newCount) {
      this.count = newCount;
    }
  }
};
</script>

子组件:

<template>
  <div>
    <button @click="increment">增加</button>
    <p>当前计数: {{ localCount }}</p>
  </div>
</template>

<script>
import { ref, watch } from 'vue';

export default {
  name: 'Counter',
  props: {
    initialCount: {
      type: Number,
      default: 0
    }
  },
  setup(props, { emit }) {
    const localCount = ref(props.initialCount);

    const increment = () => {
      localCount.value++;
      emit('countChanged', localCount.value);
    };

    // 监听 props 的变化, 更新 localCount
    watch(() => props.initialCount, (newVal) => {
      localCount.value = newVal;
    });

    return { localCount, increment };
  }
};
</script>

在这个例子中,父组件将初始计数传递给子组件,子组件则通过事件将更新后的计数传回父组件。

5. 总结

通过上述示例,我们简单了解了 Vue3 的基础知识和组件之间的通信方式。Vue3 提供了更为强大的功能和简单的 API,使得开发变得更加高效。希望这篇文章能够对你入门 Vue3 开发有所帮助。在接下来的学习中,可以进一步探索路由、状态管理等高级主题,为你的项目增添更多功能。

点赞(0) 打赏

微信小程序

微信扫一扫体验

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部