UNIAPP实战项目笔记5 卡片组件和组件的传递参数

卡片组件设计与应用
本文介绍了一种封装的卡片组件Card及其在index页面的应用实践。通过详细展示Card组件的源代码,包括模板、脚本及样式部分,文章进一步解释了如何在index.vue中引入和使用该组件,并通过传递不同的参数实现多样化的显示效果。

推荐:

  1. 顶部滑动导航
  2. swiper
    • 名称: IndexSwiper
    • 封装: 是
  3. 推荐商品
    • 名称: Recommend
    • 封装: 是
  4. 卡片
    • 名称: card
    • 封装: 是
    • 公用: 是

卡片组件和组件的传递参数

  • 在componets文件加下新建common文件夹下新建卡片组件Card.vue
    <template>
        <view class="card">
            <view class="">-</view>
            <slot>
                <view class="card-name">{{cardTitle}}</view>
            </slot>
            <view class="">-</view>
        </view>
    </template>

    <script>
        export default{
            // 参数接收
            props:{
                cardTitle:String
            }
        }
    </script>

    <style lang="scss">
    .card{
        padding: 20rpx 0;
        display: flex;
        justify-content: center;
        font-weight: bold;
    }
    .card-name{
        padding: 0 20rpx;
        font-size: 32rpx;
    }
    </style>
  • index.vue 引入并注册卡片组件 同时 向组件传递参数
    <template>
        <view class="content">
            <view class="index">
                <IndexSwiper></IndexSwiper>
                <Recommend></Recommend>
                <Card cardTitle='猜你喜欢'></Card>
                <Card cardTitle='商品店铺'></Card>
                <Card cardTitle='运动户外'></Card>
            </view>
            
            <view class="f-active-color">
                文字
            </view>
            <view class="iconfont icon-xiaoxi"></view>
            <view class="text-area">
                <text class="title">{{title}}</text>
            </view>
        </view>
    </template>

    <script>
        import IndexSwiper from '@/components/index/indexSwiper.vue';//引入
        import Recommend from '@/components/index/Recommend.vue';//引入
        import Card from '@/components/common/Card.vue';//引入
        export default {
            data() {
                return {
                    title: 'Hello'
                }
            },
            components:{
                IndexSwiper, //注册
                Recommend,
                Card
                
            },
            onLoad() {

            },
            methods: {

            }
        }
    </script>

    <style>
        .content {
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
        }

        .logo {
            height: 200rpx;
            width: 200rpx;
            margin-top: 200rpx;
            margin-left: auto;
            margin-right: auto;
            margin-bottom: 50rpx;
        }

        .text-area {
            display: flex;
            justify-content: center;
        }

        .title {
            font-size: 36rpx;
            color: #8f8f94;
        }
    </style>

实际案例图片

给组件传递参数

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值