vue3.0实现todolist(2)组件的定义

本文展示了如何在Vue中进行组件化开发,包括在`home.vue`文件中导入并使用`NavHeader`, `NavMain`, `NavFooter`三个子组件,通过`import`和`export default`实现ES6模块化。每个子组件都有自己的模板、脚本和样式,实现了页面头部、主体和底部的布局。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

如何定义一个组件:

以home.vue为例

vue3用到的组件都从vue解构,es6提供的语法。

定义组件defineComponent

export default导出 调用defineComponent(方法{参数})

es6模块化 import export

ctx:上下文

export default defineComponent({
//传对象的参数
    name:'home',//组件名称
    //接收父组件的数据
    props:{},
    //定义子组件
    components:{

    },
    setup(props,ctx){
        return{
        
        }
    }
})

实现tolist所需的4个组件

//父组件
<template>
<div>
  <nav-header></nav-header>
  <nav-main></nav-main>
  <nav-footer></nav-footer>
</div>
</template>

<script>
// @ is an alias to /src
import NavHeader from '@/components/NavHeader';
import NavMain from "@/components/NavMain";
import NavFooter from "@/components/NavFooter";
import { defineComponent } from "vue";

export default defineComponent({
  name: "home", //组件名称
  //接收父组件的数据
  props: {},
  //定义子组件
  components: {
    NavHeader,
    NavMain,
    NavFooter
  },
  setup(props, ctx) {
    return {};
  }
});
</script>
//子组件1
<template>
<div>
    header
</div>
</template>
<script>
    export default{
        
    }
</script>
<style scoped lang='scss'>

</style>

//子组件2
<template>
<div>
    main
</div>
</template>
<script>
    export default{
        
    }
</script>
<style scoped lang='scss'>

</style>

//子组件3
<template>
<div>
    footer
</div>
</template>
<script>
    export default{
        
    }
</script>
<style scoped lang='scss'>

</style>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值