Vue3.0学习(一)------Vue简单介绍

什么是Vue?

官方原文:Vue是一款用于构建用户界面的JavaScript框架。它基于标准的HTML、CSS和JavaScript构建,并提供了一套声明式的、组件化的编程模型,帮助你高效地开发用户界面。
简单来说,Vue就是一个构建用户界面的前端框架

Vue的两个核心功能

  • 声明式渲染
    Vue基于标准HTML扩展了一套模板语法,使我们可以声明式地描述最终输出的HTML和JavaScript状态之间的关系。
  • 响应性
    Vue会自动追踪JavaScript状态并在其发生变化时响应式地更新DOM。

如何理解Vue是一种渐进式框架?

什么是渐进式框架?

简单地说,渐进式的概念是分层设计,每层可选,不同层可以灵活接入其他方案架构模式。

渐进式的例子:
对我们开发人员来说,往往需要购买一个服务器来进行系统的开发工作。

  • 我们要买一个服务器,首先选择一个企业提供的服务器,我们可以选择阿里云也可以选择腾讯云或者华为云。
  • 接着我们可以选择对应企业服务器提供的各种操作系统,比如Ubantu、Centos或者Windows。
  • 在完成操作系统的安装和初始化中,我们可以选择在系统上安装自己想要的软件,也可以选择不安装。
    在以上这个例子当中,经历了服务器供应商/操作系统/软件这三层,每层都是可以选择的,也可以接入其他产品。这就是一个渐进式的产品。

综上所述,渐进式的最大好处就是灵活,可以根据需求进行定制。

Vue渐进式的理解

image
Vue核心的功能,是一个视图模板引擎。在声明式渲染(视图模板引擎)的基础上,可以通过各种各样的组件系统、客户端路由、大规模状态管理来构建一个完整的框架。而且这些功能是互相独立,可以在核心功能的基础上任意选用其他组件而不用组合在一起。符合渐进式的概念,所以Vue是一个渐进式框架。

单文件组件

在Vue项目中,可以用一个类似HTML格式来书写Vue组件,称为单文件组件(也被叫做.vue文件)。顾名思义就是将有HTML(模板)、CSS(样式)、JavaScript(逻辑)封装在同一个文件里。

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

<template>
  <button @click="count++">Count is: {{ count }}</button>
</template>

<style scoped>
button {
  font-weight: bold;
}
</style>

Vue中的API风格

Vue中有两种不同的风格书写组件:

  • 选项式API
  • 组件式API

选项式API

使用选项式API,可以包含多个选项的对象组件逻辑。比如data、method和mounted。选项所定义的属性都会暴露在函数内部的this上,它指向当前组件实例。

<script>
export default {
  // data() 返回的属性将会成为响应式的状态
  // 并且暴露在 `this` 上
  data() {
    return {
      count: 0
    }
  },

  // methods 是一些用来更改状态与触发更新的函数
  // 它们可以在模板中作为事件监听器绑定
  methods: {
    increment() {
      this.count++
    }
  },

  // 生命周期钩子会在组件生命周期的各个不同阶段被调用
  // 例如这个函数就会在组件挂载完成后被调用
  mounted() {
    console.log(`The initial count is ${this.count}.`)
  }
}
</script>

<template>
  <button @click="increment">Count is: {{ count }}</button>
</template>

组件式API

通过组件式的API,我们可以导入API函数来描述组件逻辑。

<script setup>
import { ref, onMounted } from 'vue'

// 响应式状态
const count = ref(0)

// 用来修改状态、触发更新的函数
function increment() {
  count.value++
}

// 生命周期钩子
onMounted(() => {
  console.log(`The initial count is ${count.value}.`)
})
</script>

<template>
  <button @click="increment">Count is: {{ count }}</button>
</template>
posted @   icewei  阅读(144)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· winform 绘制太阳,地球,月球 运作规律
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
点击右上角即可分享
微信分享提示