defineProps 사용
defineProps
은 사용할 때 도입할 필요가 없습니다. 기본값은 전역 메서드입니다. defineProps
在使用的时候无需引入,默认是全局方法。
在 js 开发的 vue3 项目中使用
const props = defineProps({ attr1: { type: String, // S 必须大写 default: "", }, attr2: Boolean, attr3: { type: Number, required: true, }, });
js 环境中使用与 vue2 的使用方法类似,只是选项式 API 换成了组合式 API。定义 props 类型与默认值都与 vue2 类型,vue3 中使用的是defineProps
API,在此不多介绍。
在 ts 开发的 vue3 项目中使用
interface DeatilInf { aaa: string; bbb: number; } const props = withDefaults( // 参数一:定义props类型:? 代表非必传字段, :号后面紧跟的是数据类型或自定义接口, | 或多种类型 defineProps<{ name: string; age?: number; detail?: DeatilInf | any; }>(), // 参数二:指定非必传字段的默认值 { age: 18, detail: {}, } );
使用 typeScript 开发 vue3 项目定义 props 主要使用的 API 有两个: defineProps
定义接收的 props 、withDefaults
定义接收的类型。
当然,你可以使用与 JavaScript 环境相同的方式来定义 props,但这种做法会削弱使用 TypeScript 的意义。
defineEmits 的使用
与 vue2 不同:vue3 在触发事件之前需要定义事件。在Vue3中,`defineEmits`同样是一个全局API
js 中使用
const emits = defineEmits(["change", "input"]); emits("chage", "data"); emits("input", { data: 123 });
TS 中使用
enum EventName { CHANGE = "change", INPUT = "input", } const emits = defineEmits<{ (event: EventName.CHANGE, data: string[]): void; (event: EventName.INPUT, data: string): void; }>(); emits(EventName.CHANGE, ["data"]); emits(EventName.INPUT, "123");
上面的代码中使用了枚举 enum
- js가 개발한 vue3 프로젝트에 사용
defineProps
API를 사용합니다. 🎜- 🎜 ts🎜
defineProps
는 수신된 props를 정의하고, withDefaults
는 수신된 유형을 정의합니다. 🎜🎜물론 JavaScript 환경과 동일한 방식으로 props를 정의할 수 있지만 그렇게 하면 TypeScript를 사용하는 목적이 무산됩니다. 🎜🎜defineEmits 🎜🎜 사용은 vue2와 다릅니다. vue3은 이벤트를 트리거하기 전에 이벤트를 정의해야 합니다. Vue3에서 `defineEmits`는 전역 API이기도 합니다🎜- 🎜js에서 사용됨🎜
- 🎜 TS에서 🎜
enum
열거형을 사용합니다. js는 ts에서도 사용될 수 있으므로 그 역할을 수행하지 않을 것이라는 점을 언급할 가치가 있습니다. 🎜🎜특히 대규모 프로젝트에서는 데이터 유형을 트리거할 때 예상치 못한 오류가 발생할 수 있으므로 오류를 찾는 데 몇 시간이 걸릴 수 있습니다. 매직 스트링이 잘못 작성되어 예상되는 이벤트 트리거 효과를 얻지 못할 수 있습니다. 🎜위 내용은 vue3에서 소품과 방출을 사용하고 해당 유형과 기본값을 지정하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

前端有没有现成的库,可以直接用来绘制 Flowable 流程图的?下面本篇文章就跟小伙伴们介绍一下这两个可以绘制 Flowable 流程图的前端库。

vue不是前端css框架,而是前端JavaScript框架。Vue是一套用于构建用户界面的渐进式JS框架,是基于MVVM设计模式的前端框架,且专注于View层。Vue.js的优点:1、体积小;2、基于虚拟DOM,有更高的运行效率;3、双向数据绑定,让开发者不用再去操作DOM对象,把更多的精力投入到业务逻辑上;4、生态丰富、学习成本低。

Vue3如何更好地使用qrcodejs生成二维码并添加文字描述?下面本篇文章给大家介绍一下Vue3+qrcodejs生成二维码并添加文字描述,希望对大家有所帮助。

本篇文章我们来了解 Vue2.X 响应式原理,然后我们来实现一个 vue 响应式原理(写的内容简单)实现步骤和注释写的很清晰,大家有兴趣可以耐心观看,希望对大家有所帮助!


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

ZendStudio 13.5.1 맥
강력한 PHP 통합 개발 환경

Eclipse용 SAP NetWeaver 서버 어댑터
Eclipse를 SAP NetWeaver 애플리케이션 서버와 통합합니다.

에디트플러스 중국어 크랙 버전
작은 크기, 구문 강조, 코드 프롬프트 기능을 지원하지 않음

DVWA
DVWA(Damn Vulnerable Web App)는 매우 취약한 PHP/MySQL 웹 애플리케이션입니다. 주요 목표는 보안 전문가가 법적 환경에서 자신의 기술과 도구를 테스트하고, 웹 개발자가 웹 응용 프로그램 보안 프로세스를 더 잘 이해할 수 있도록 돕고, 교사/학생이 교실 환경 웹 응용 프로그램에서 가르치고 배울 수 있도록 돕는 것입니다. 보안. DVWA의 목표는 다양한 난이도의 간단하고 간단한 인터페이스를 통해 가장 일반적인 웹 취약점 중 일부를 연습하는 것입니다. 이 소프트웨어는

Atom Editor Mac 버전 다운로드
가장 인기 있는 오픈 소스 편집기
