• 总结 - 组件通用封装思路(组件封装)


    组件封装:

            1. 不变;

            2. 变:①prop ②slot插槽

    详细总结在文末。

    ---------------------------------------------------------------------------------------------------

    问题:结构相似,内容不同  --》  可以用组件封装 实现复用结构的效果

    思想:把可复用的结构只写一次,把可能发生变化的部分抽象成组件参数(props/插槽

    步骤:

    1. 搭建纯静态部分(不变的部分)

    2. 抽象可变的部分

    • 纯文本/纯展示 -> props
    • 复杂模板 -> 插槽

    具体实现

    封装的组件中:

    1. <script setup>
    2. // 1. 定义props:defineProps({ 变量:{type:数据类型} }),用于复用 简单数据,如纯js类
    3. defineProps({
    4. title: {
    5. type: String
    6. }
    7. })
    8. script>
    9. <template>
    10. <div class="head">
    11. {{ title }}
    12. div>
    13. <slot>slot>
    14. template>

    在父组件中,导入并调用封装的组件

    1. <template>
    2. <HomePanel title="新鲜好物">
    3. ...
    4. HomePanel>
    5. template>

    例子1:prop

    封装一个组件(结构卡片),纯展示类 -> 抽象为props参数,传什么显示什么

    注,:goods=”“前面的冒号是动态数据绑定

    vue中的冒号(:) 指令v-bind的缩写,用于数据绑定的语法糖,可以将组件的数据绑定到模板中。即,通过在模板中 使用冒号和Vue实例中的数据属性名称,将该数据属性的值动态绑定到对应的HTML元素上。-->   用法为    :数据属性=‘值’

    (本例子中,数据绑定的值是接口数据中的一个数组,再将其渲染到页面中。) 

     

    例子2:prop、slot插槽

    -------------------------------------------------------------------------------------------------------------------- 

    纯展示类 组件通用封装思路 总结:

    1. 搭建纯静态部分,不管可变部分

    2. 抽象可变的部分为组件参数

    非复杂的模板抽象成props,复杂的结构模板抽象成slot插槽

    参考:vue组件中的“:”、“@”、“.”属性 - BAHG - 博客园 (cnblogs.com)

  • 相关阅读:
    使用Jmeter进行压力测试
    性能测试 —— jmeter计数器
    Spring Boot2.5 使用 Spring Data
    论文阅读 (65):RePaint: Inpainting using Denoising Diffusion Probabilistic Models
    k8s集群搭建及对一些组件的简单理解(二)
    头歌php mysql操作答案
    路由器基础(八):策略路由配置
    HashTable和HashMap的区别
    vue实现防抖函数、节流函数,全局使用【输入框、按钮】
    UE4.27 Ubuntu 像素流环境搭建
  • 原文地址:https://blog.csdn.net/weixin_42479421/article/details/132790829