Teknologian jakaminen

Typescript Vue3:n defineProps vastaanottaa parametrit ja asettaa oletusarvot oletusarvoilla

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

1. defineProps: vastaanottaaemokomponenttiparametrit läpäissyt

2. oletusarvoilla: vastaanotettaessaAseta oletusarvo

Näitä kahta API:ta ei tarvitse ottaa käyttöön, ja niitä voidaan käyttää suoraan asennuksessa.

1. person.vue vastaanottaa parametrit

  1. <script setup lang="ts">
  2. import type {Persons} from '@/types'
  3. // 接收list + 可不传
  4. defineProps(["list"])
  5. // 接收list + 限制类型 + 必传
  6. defineProps<{list:Persons}>()
  7. // 接收list + 限制类型 + 设置默认值 + 可不传
  8. withDefaults(defineProps<{list:Persons}>(),{
  9. // 数组类型必须使用函数返回,其它不用
  10. list:()=>[{name: '张三',age: 18,id:"adwa1234"}]
  11. })
  12. // 将Props收到的值保存起来,是一个对象
  13. let propsData = defineProps(["persons"])
  14. console.log(propsData.list);
  15. </script>

2. App.vue välittää parametrit

  1. <script lang="ts" setup>
  2. let persons = [{
  3. name: '张三',
  4. age: 18,
  5. id:"adwa1234"
  6. }, {
  7. name: '李四',
  8. age: 20,
  9. id:"afehgr48"
  10. }, {
  11. name: '王五',
  12. age: 22,
  13. id:"imugk84"
  14. }]
  15. </script>
  16. <template>
  17. <Person :list="persons" />
  18. </template>

3. type.ts määrittää tyypin

  1. export interface PersonInter {
  2. id:string,
  3. name:string,
  4. age:number
  5. }
  6. export type Persons = Array<PersonInter>