【Vue3】

组合式API

setup选项

执行时机:比beforeCreate早

不能使用this

数据和函数需要return才能应用

标准写法

<script>export default {setup() {const message = "vue32"const logMessage = () => {console.log(message)}return {message,logMessage}}console.log('beforeCreate')}}
</script>

简化版(语法糖)

<script setup>const message = "vue3"const logMessage = () => {console.log(message)}
</script>

reactive(对象类型)

作用:接受应该对象类型的数据,返回一个响应式的对象

<script setup>import {reactive} from 'vue'const state = reactive({count: 100})const setCount = () => {state.count++}
</script><template><div><div>{{state.count}}</div><button @click="setCount">+1</button></div>
</template>

ref (简单类型和对象类型都行)

作用:接受一个对象类型或简单类型的数据,返回一个响应式的对象

在脚本中需要通过.value,在template中不用

<script setup>import {ref} from 'vue'const count = ref(0)const setCount = () => {count.value++}
</script><template><div><div>{{count}}</div><button @click="setCount">+1</button></div>
</template>

computed

<script setup>import {computed,ref} from 'vue'const list = ref([1, 2, 3, 4, 5, 6, 7, 8])const computedList = computed(() => {return list.value.filter(item => item > 2)})const addfn = () => {list.value.push(12)}
</script><template><div><div>{{list}}</div><div>{{computedList}}</div><button @click="addfn" type="button">修改</button></div>
</template>

 watch

监视事件

<script setup>import {ref,watch} from 'vue'const count = ref(0)const nickname = ref('张三')const changeCount = () => {count.value++}const changeName = () => {nickname.value = 'lisi'}// 一个对象watch(count,(newValue,oldValue)=>{console.log(newValue,oldValue)})// 多个对象watch([count,nickname],(newValue,oldValue)=>{console.log(newValue[0],oldValue[0])})
</script><template><div><div>{{count}}</div><button @click="changeCount" type="button">修改</button><div>{{nickname}}</div><button @click="changeName" type="button">修改</button></div>
</template>

mounted

渲染完成后执行,操作DOM

created

初始化渲染请求 

父子组件

父传子

子组件

<template><div class='son'>son of api-{{car}}</div>
</template><script>const props = defineProps({car: String})
</script><style scoped>.son {border: 1px solid #000;padding: 30px;}
</style>

父组件

<script setup>// 局部注册import SonCom from'@/components/son-com.vue'
</script><template><div><SonCom car="1"></SonCom></div>
</template>

 子传父

defineExpose(子传父)

父组件

<script setup>
import { ref, onMounted } from 'vue'
import testCom from './components/test-com.vue'
const input = ref(null)
onMounted(() => {})
const clickFn = () => {input.value.focus()
}
const testRef = ref(null)
const getCom = () => {console.log(testRef.value.name)testRef.value.sayHi()
}</script><template><div><input type="text" ref="input" /><button @click="clickFn">聚焦</button><testCom ref="testRef"></testCom><button @click="getCom">获取组件</button></div>
</template><style scoped></style>

子组件

<script setup>
const name = "test";
const sayHi = () => {console.log("hi");
}
defineExpose({name,sayHi,
})
</script>
<template><div>test demo-{{ name }}</div>
</template>

外部组件

axios

类似ajax,用于后台传值

echarts

画图,一般在mounted函数中实现

 工程化开发

Vue CLI脚手架

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/180237.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MATLAB算法实战应用案例精讲-【图像处理】机器人视觉

目录 前言 机器人视觉发展历程 知识储备 光的偏振 01偏振光 02偏振应用

PostgreSQL数据库中的后台进程

在 PostgreSQL 中&#xff0c;有多个后台进程&#xff08;也称为工作者进程&#xff09;&#xff0c;负责处理不同的任务和功能。这些进程包括但不限于以下几种&#xff1a; 1. PostgreSQL数据库中的后台进程 1.1. Postmaster 进程 这是 PostgreSQL 服务器的主进程&#xff…

livox 半固体激光雷达 gazebo 仿真 | 更换环境与雷达型号

livox 半固体激光雷达 gazebo 仿真 | 更换环境与雷达型号 livox 半固体激光雷达 gazebo 仿真 | 更换环境与雷达型号livox 介绍更换环境更换livox激光雷达型号 livox 半固体激光雷达 gazebo 仿真 | 更换环境与雷达型号 livox 介绍 览沃科技有限公司&#xff08;Livox&#xff…

【动态规划】求最长递增子序列问题

目录 问题描述递推关系建立递推关系的思路约束条件:以 s [ k ] s[k] s[k] 结尾约束条件:以 s [ k ] s[k] s[k] 开头约束条件:增加子问题参数&#xff08;前缀&#xff09;约束条件:增加子问题参数&#xff08;后缀&#xff09;约束条件:LIS长度为k且末尾元素最小 运行实例 问…

将图像的rgb数据转成DICOM医学图像格式

dcmtk官方文档&#xff1a;https://support.dcmtk.org/docs/ dcmtk最新源码下载&#xff1a;https://www.dcmtk.org/en/dcmtk/dcmtk-software-development/ dcmtk旧版本源码下载&#xff1a;https://dicom.offis.de/download/dcmtk/ 用DCMTK库实现将图像转成dcm格式 dcmtk库的…

linux logrotate日志轮询设置案例一

1.编辑/etc/logrotate.conf文件&#xff0c;添加如下配置&#xff0c;并保存 /var/log/ztj.log {missingokhourlycreate 644 root rootsharedscriptspostrotateif [ -f /var/run/syslogd.pid ];then/bin/kill -HUP $(/bin/cat /var/run/syslogd.pid) >/dev/null 2>&…

C++二分查找、离线算法:最近的房间

作者推荐 利用广度优先或模拟解决米诺骨牌 本文涉及的基础知识点 二分查找算法合集 题目 一个酒店里有 n 个房间&#xff0c;这些房间用二维整数数组 rooms 表示&#xff0c;其中 rooms[i] [roomIdi, sizei] 表示有一个房间号为 roomIdi 的房间且它的面积为 sizei 。每一…

mitmproxy安装以及模拟接口数据返回

使用pycharm直接安装&#xff0c;pip install mitmproxy 安装成功后直接使用命令mitmdump --version查看版本 然后自己本地下载https://mitmproxy.org/downloads/#10.1.1/ 之后一步步安装即可 安装成功后这里会出现一个.mitmproxy文件 双击这个文件进入开始安装证书 我…

Python与设计模式--迭代器模式

23种计模式之 前言 &#xff08;5&#xff09;单例模式、工厂模式、简单工厂模式、抽象工厂模式、建造者模式、原型模式、(7)代理模式、装饰器模式、适配器模式、门面模式、组合模式、享元模式、桥梁模式、&#xff08;11&#xff09;策略模式、责任链模式、命令模式、中介者模…

明亮暖色人像

明亮暖色人像 1、Lr 曝光up&#xff0c;提高明亮度黑色色调up & 对比度down & 反差down --> 柔和度up色温up&#xff0c;暖色调up [10] 。----->暖色增强 However 人物皮肤黄up ----->HSL控制肤色---->饱和度&#xff08;橙色down、黄色up&#xff09;—…

【闲读 1】量子论引出对认知的思考

文章目录 一、物理学的两朵乌云故事量子力学的世界 二、 波粒二象性三、量子不确定性四、感知尺度 混沌学院课程《【物理学思维】第四节 量子论》&#xff0c;观后感。 一、物理学的两朵乌云故事 19世纪末&#xff0c;著名的物理学家开尔文爵士&#xff08;温度单位命民&…

vue2通过权限控制tab标签显示和隐藏

vue2通过权限控制tab标签显示和隐藏 1、前言2、v-if实现自定义控制 1、前言 在开发过程中&#xff0c;我们可能会遇到这样一个场景&#xff1a;根据不同权限对tab栏内容进行控制&#xff0c;这时候用自定义指令v-permission就达不到我们想要的效果&#xff0c;其是将当前节点的…

图书管理系统源码,图书管理系统开发,图书借阅系统源码整体功能演示

用户登录 基础资料 操作员管理 超期罚金设置 读者分类 读者管理 图书分类 图书管理 图书借还管理 图书借取 图书还去 图书借还查询 读者借书排行 用户登录 运行View目录下Login文件夹下的Index.csthml出现登录界面&#xff0c;输入用户名密码分别是admin密码admin12…

IDEA删除的文件怎么找回更新

一、 查找本地历史记录IDEA在进行代码版本管理时&#xff0c;会自动创建本地历史记录&#xff0c;如果我们误删了文件&#xff0c;可以通过查找本地历史记录来找回文件。 1.在项目中&#xff0c;选中被删文件的父级目录&#xff0c;“File”->“Local History”->“Show…

Realtek蓝牙Android10.0移植结束后的基本测试和常见问题分析

基本测试主要包括配置检查和BT测试两大部分 配置检查&#xff1a; 为了进一步确保 porting 没有问题&#xff0c;在测试之前先确认 fw 以及 config 文件是否存在。 adb shell 到测试平台的根目录&#xff0c;检查测试平台的 vendor/firmware/目录中 rtlxxxx_fw 以及 rtlxxx…

智能优化算法应用:基于头脑风暴算法无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用&#xff1a;基于头脑风暴算法无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用&#xff1a;基于头脑风暴算法无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.头脑风暴算法4.实验参数设定5.算法结果6.参考…

Linux:文件系统初步理解

文章目录 文件的初步理解C语言中对文件的接口系统调用的接口位图的理解open调用接口 文件和进程的关系进程和文件的低耦合 如何理解一切皆文件&#xff1f; 本篇总结的是关于Linux中文件的各种知识 文件的初步理解 在前面的文章中有两个观点&#xff0c;1. 文件 内容 属性&…

19 Go的时间日期

概述 在上一节的内容中&#xff0c;我们介绍了Go的Gob&#xff0c;包括&#xff1a;Gob简介、Gob编码、Gob解码等。在本节中&#xff0c;我们将介绍Go的时间日期。Go语言提供了一套强大的时间日期处理库&#xff0c;使得处理时间和日期变得简单和高效。Go语言中处理日期和时间的…

新手引导功能,Intro.js 和driver.js 比较

Intro.js 和 driver.js 都是用于创建前端新手引导的工具&#xff0c;它们都有各自的优点和适用场景。具体选择哪个工具&#xff0c;应该根据项目需求和团队习惯来决定。 下面是对 Intro.js 和 driver.js 的简单介绍和比较&#xff1a; Intro.js&#xff1a; Intro.js 是一个轻…

算法通关村-----数据流的中位数

数据流的中位数 问题描述 中位数是有序整数列表中的中间值。如果列表的大小是偶数&#xff0c;则没有中间值&#xff0c;中位数是两个中间值的平均值。 例如 arr [2,3,4] 的中位数是 3 。 例如 arr [2,3] 的中位数是 (2 3) / 2 2.5 。 实现 MedianFinder 类: MedianFin…