Vue3+TS知识

本篇内容全部采用TypeScript+组合式API+setup语法糖的规范形式

Vue3==兼容==>Vue2--基本不用2的写法

目前进程 --007

创建Vue3工程

vite和webpack是等价的,两个不同的构建工具,vitewebpack的区别在于,vite需要用到什么,也就是取决于你看什么,就加载什么;而webpack则是全部加载了再给你展示,速度相对就慢很多,类似懒加载

基于Vue-cli创建(脚手架-webpack)

基于vite创建 https://vitejs.cn/

sql 复制代码
1.创建指令(需要安装node.js--获得npm环境) 
$ pnpm create vue@latest

2.输入项目名称
3.选择其他配置完成配置

目录介绍

src内存放源代码在src中,必不可少的文件是App.vuemain.ts

main.ts文件

ts 复制代码
//引入createApp用于创建应用
import {createApp} from 'vue'//createApp创建应用,类似造花盆
//引入App根组件
import App from './App.vue'//App组件,类似花盆里的根,后续其他的vue组件类似叶子树枝,都安装在App根上

createApp(App).mount('#app')//将花插在花盆里,也就是将APP传入;mount是挂在到一个名为#app的容器中-->在index.html中

.Vue文件的组成

ts 复制代码
<template>
  <!-- html -->
</template>

<script lang="ts">//lang="ts"作用是指定该 <script> 部分使用 TypeScript(TS)语言编写
//JS或TS
</script>

<style>
/* 样式 */
</style>

总结

Vite项目中,index.html是项目的入口文件,在项目的最外层

加载index.html后,Vite解析<script type="module" src="xxx">指向的JavaScript

Vue3中是通过createApp函数创建一个应用实例

Vue3中使用vue2语法实现简单效果demo

在Vue2中使用OptionsAPI选项式 -->name;data;methods等都是选项

Person.vue

ts 复制代码
<template>
  <div class="person">
    <h2>姓名{{ name }}</h2>
    <h2>年龄{{ age }}</h2>
    <button @click="changeName">修改名字</button>
    <button @click="changeAge">修改年龄</button>
    <button @click="showTel">查看联系方式</button>
  </div>
</template>

<script lang="ts">
export default {
  name: "Person",
  data() {
    return {
      name: "张三",
      age: 18,
      tel: "12324124",
    };
  },
  methods: {
    changeName() {
      this.name = "zhang-3";
    },
    changeAge() {
      this.age += 1;
    },
    showTel() {
      alert(this.tel);
    },
  },
};
</script>

<style>
.person {
  background-color: skyblue;
}
</style>

App.vue

ts 复制代码
<template>
  <div class="app">
    <h1>你好啊!</h1>
    <Person></Person>
  </div>
</template>

<script lang="ts">
import Person from "./components/Person.vue";
export default {
  name: "App", //组件名
  components: { Person }, //组成组件
};
</script>

<style>
.app {
  background-color: red;
}
</style>

Vue3核心语法

Setup

setupVue3中一个新的配置项,值是一个函数,它是Componsition API表演的舞台,组件中所用到的:数据、方法、计算属性、监视......等等,均在setup中。

特点图下:

setup函数返回的对象中的内容,可直接在模板中使用

setup中访问thisundefined

setup函数会在beforeCreate之前调用,它是"领先"所有钩子执行的

相关推荐
林恒smileZAZ4 小时前
Vue<前端页面版本检测>
前端·javascript·vue.js
我是Superman丶8 小时前
Element UI 表格某行突出悬浮效果
前端·javascript·vue.js
Cobyte12 小时前
3.响应式系统基础:从发布订阅模式的角度理解 Vue2 的数据响应式原理
前端·javascript·vue.js
军军君0113 小时前
Three.js基础功能学习十八:智能黑板实现实例五
前端·javascript·vue.js·3d·typescript·前端框架·threejs
禅思院13 小时前
前端架构演进:基于AST的常量模块自动化迁移实践
前端·vue.js·前端框架
许杰小刀13 小时前
FastAPI + Vue 前后端分离实战:我的项目结构“避坑指南”
前端·vue.js·fastapi
walking95713 小时前
Vue3 日历组件选型指南:五大主流方案深度解析
前端·vue.js·面试
英俊潇洒美少年13 小时前
Vue、React.lazy、React 19 异步组件核心区别
javascript·vue.js·react.js
快乐小土豆~~14 小时前
echarts柱状图的X轴label过长被重叠覆盖
前端·javascript·vue.js·echarts
儒雅的烤地瓜14 小时前
Vue | Vue3中<script setup>用法详解
vue.js·vue3·选项式api·组合式 api·setup方法·<script setup>