Vue3入门指北(一)组件API风格

简介: Vue3入门指北(一)组件API风格

前言


前端技术的更替可谓是日新月异,可能一不小心你可能就跟不上前端这飞快的发展速度了。所以说,面对这样的局面,我们要时刻保持着一个学习的心态,对新技术具有探索的精神,不要让自己被淘汰了。


而Vue3以及早早的成为默认版本,而他的生态也趋近成熟。是时候系统的学习一下子了,看看他给我们带来了什么东西。


组件API风格


在Vue3中组件的写法可以分为两种风格:选项式 API组合式 API


选项式 API (Options API)


选项式顾名思义就是通过多个选项来描述一个组件的逻辑。就像datamethodsmounted等等。在选项内部,可以通过this访问到当前组件实例。


<script>
export default {
  // data() 返回的属性将会成为响应式的状态
  // 通过 this 可以访问到 data中的数据
  data() {
    return {
      num: 0
    }
  },
  methods: {
    add() {
      this.num++
    }
  },
  mounted() {
    console.log(`初始化: ${this.num}.`)
  }
}
</script>
<template>
  <button @click="add">计数: {{ num }}</button>-
</template>
复制代码


组合式 API (Composition API)


在组合式API中,所有的选项都是通过从vue 中导入到组件中的。可以和<script setup>配合使用,在这里声明的顶层变量以及导入函数等可以直接在 template 中使用。


<script setup>
import { ref, onMounted } from 'vue'
// 响应式状态
const num = ref(0)
function add() {
  num.value++
}
onMounted(() => {
  console.log(`初始化: ${this.num}.`)
})
</script>
<template>
  <button @click="add">计数: {{ num }}</button>
</template>
复制代码


如何选择


这两种方式,在绝大多数的场景下都能使用。值得注意的一点是,选项式 API 是在组合式 API 的基础上实现的,选项式的方式更加灵活,抒写更加自由一些,对于组件逻辑的抽离更加方便,所以在觉大多数场景下,还是建议组合式API的。

相关文章
|
18天前
|
资源调度 JavaScript API
vue3封装城市联动组件
vue3封装城市联动组件
|
22天前
|
JavaScript 前端开发 IDE
[译] 用 Typescript + Composition API 重构 Vue 3 组件
[译] 用 Typescript + Composition API 重构 Vue 3 组件
[译] 用 Typescript + Composition API 重构 Vue 3 组件
|
21天前
|
JavaScript 前端开发 开发者
哇塞!Vue.js 与 Web Components 携手,掀起前端组件复用风暴,震撼你的开发世界!
【8月更文挑战第30天】这段内容介绍了Vue.js和Web Components在前端开发中的优势及二者结合的可能性。Vue.js提供高效简洁的组件化开发,单个组件包含模板、脚本和样式,方便构建复杂用户界面。Web Components作为新兴技术标准,利用自定义元素、Shadow DOM等技术创建封装性强的自定义HTML元素,实现跨框架复用。结合二者,不仅增强了Web Components的逻辑和交互功能,还实现了Vue.js组件在不同框架中的复用,提高了开发效率和可维护性。未来前端开发中,这种结合将大有可为。
65 0
|
22天前
|
JavaScript 前端开发 API
[译] 用 Vue 3 Composition API 实现 React Context/Provider 模式
[译] 用 Vue 3 Composition API 实现 React Context/Provider 模式
|
1天前
|
存储 API
vue3中如何动态自定义创建组件并挂载
vue3中如何动态自定义创建组件并挂载
|
1天前
|
JavaScript
vue 函数化组件
vue 函数化组件
|
18天前
|
存储 JavaScript
vue组件的五种传值方法(父子\兄弟\跨组件)
vue组件的五种传值方法(父子\兄弟\跨组件)
|
22天前
|
JavaScript 前端开发 Serverless
[译] VueJS 中更好的组件组合方式
[译] VueJS 中更好的组件组合方式
|
22天前
|
前端开发 JavaScript API
Vue 3 新特性:在 Composition API 中使用 CSS Modules
Vue 3 新特性:在 Composition API 中使用 CSS Modules
|
22天前
|
JavaScript
Vue3相关组件项目依赖依赖版本信息
这篇文章展示了一个Vue 3项目中使用的组件和库的依赖版本信息,包括`ant-design-vue`、`swiper`、`vue`、`vue-router`等,以及开发依赖如`vite`、`vue-tsc`、`eslint`等。
Vue3相关组件项目依赖依赖版本信息