10. 如何干净利索的 拆出 合适的组件--上

从我的思路来说:首先要思考这几个问题

  • 拆的这个结构适合作为组件吗 ?拆开的话要拆到什么程度呢 ?
  • 拆组件这一行为能够有效的减少代码、让渲染数据更简便吗 ?
  • 拆到一半感觉遇到的问题太多,耽误进度还要不要拆。

首先 我认为合适拆组件的结构

  • 思考一下,如果是你的话会如何拆分呢,拆分哪一部分呢?

方案一

  • 重复区域全部拎出来,这样数据的渲染比较便捷,代码量也会减少。
    • 优点: 可以实现循环编写内容,节省代码,渲染便捷
    • 缺点:复用性较差,这个组件是包含着 chart 的,代码大概长这样。
js 复制代码
<template>
    <div class="box">
        <div class="data">...</div>
        <div class="chart" ref="chart"></div>
    </div>
</template>
<script>
    import * as echarts from 'echarts';
    export default{
        name:'CompositeChart',
        data(){ 
        // ...,
        option:{
            // 图表的配置项,自己找去  https://echarts.apache.org/zh/index.html
            // 或直接搜索 Echars 官网
        }
        },
        method:{
            // 初始化图表 初始化方法里面写的是获取的真实 DOM
            this.myChart = echarts.init(this.$refs.chart);
            
        }
    }
</script>
  • 想到这里时的脑子还是比较乱的,但是绝对是要拆出来,不可能写这么多的重复代码。

方案二

  • !!首先!! 在工作中,不管使用什么办法,第一条要务就是完成,因此,我先是使用第一方案,把静态搭建出来。

我的最终方案是将以下 结构 拆解出来

  • 将它拆出来,首先肯定是相似点比较多,精准一点就是:样式相同,内容性质相同。

  • 再者,将它的左侧拆做组件,可以减少很多的代码,虽然对于之后渲染数据不太友好

  • 1.拆组件的前提

  • 2.拆组件的注意事项

  • 3.什么样的组件才适合拆

时间到了,我先发一个,无论如何一天一章

相关推荐
新中地GIS开发老师13 分钟前
零基础WebGIS开发入门 | GeoJSON数据持久化
前端·javascript·gis·webgis·三维gis开发
sunywz1 小时前
【c#】 Web Deploy一键发布,IIS部署全流程
开发语言·前端·c#
宁&沉沦1 小时前
Chrome 扩展 Manifest 字段版本支持一览(全量)
前端·后端·编辑器
乖孩子1 小时前
Service Worker + IndexedDB 实践
前端
浮生望1 小时前
BFF架构实战:用Express+SSE为Vue3搭建安全的流式对话中间层
前端
达子6661 小时前
第10章_HarmonyOs开发图解 用JS开发UI
vue.js
先吃饱再说2 小时前
React 组件通信:从 Props 单向传递到自定义事件
前端·react.js·前端框架
swipe2 小时前
05|(前端转后全栈)不手写一堆 SQL,后端怎么操作数据库?MyBatis-Plus 入门
前端·后端·全栈
swipe2 小时前
04|(前端转后全栈)前端状态为什么不够用?从页面数据到 MySQL 持久化
前端·后端·全栈
橘子星2 小时前
别光看教程!手把手拆解 React Todo 项目,一文吃透 5 个核心概念
前端·javascript