> Vue2.x使用EventBus進行組件通信,而Vue3.x推薦使用`mitt.js`。 > > > 比起Vue實例上的`EventBus`,`mitt.js`好在哪裡呢?首先它足夠小,僅有200bytes,其次支持全部事件的監聽和批量移除,它還不依賴Vue實例,所以可以跨框架使用,React或 ...
隨著技術的發展,開發的複雜度也越來越高,傳統開發方式將一個系統做成了整塊應用,經常出現的情況就是一個小小的改動或者一個小功能的增加可能會引起整體邏輯的修改,造成牽一發而動全身。
通過組件化開發,可以有效實現單獨開發,單獨維護,而且他們之間可以隨意的進行組合。大大提升開發效率低,降低維護成本。 組件化對於任何一個業務場景複雜的前端應用以及經過多次迭代之後的產品來說都是必經之路。組件化要做的不僅僅是錶面上看到的模塊拆分解耦,其背後還有很多工作來支撐組件化的進行,例如結合業務特性的模塊拆分策略、模塊間的交互方式和構建系統等等
今天給大家介紹的一款組件: 自定義柱形圖 選中更改柱形圖顏色及文字標註顏色, 附源碼下載地址:https://ext.dcloud.net.cn/plugin?id=14132
效果圖如下
cc-barCharts 前端vue自定義柱形圖 選中更改柱形圖顏色及文字標註顏色
使用方法
<view style="background: white;padding-bottom: 20px; margin:10px 10px;">
<view style="margin: 10px; font-size: 14px;color: #444444;">該公司所屬行業分類等級</view>
<view v-if="true" style="margin-top:208px;margin-left: 10px;display: flex;">
<!--bar-title:柱形圖標題 bar-value:柱形圖值 selBarTitle:選中的柱形圖標題 -->
<cc-barCharts bar-title="AAA" :bar-value="20" :selBarTitle="selBarTitle"></cc-barCharts>
<cc-barCharts bar-title="AA" :bar-value="10" :selBarTitle="selBarTitle"></cc-barCharts>
<cc-barCharts bar-title="A" :bar-value="16" :selBarTitle="selBarTitle"></cc-barCharts>
<cc-barCharts bar-title="BBB" :bar-value="14" :selBarTitle="selBarTitle"></cc-barCharts>
<cc-barCharts bar-title="BB" :bar-value="30" :selBarTitle="selBarTitle"></cc-barCharts>
<cc-barCharts bar-title="B" :bar-value="5" :selBarTitle="selBarTitle"></cc-barCharts>
<cc-barCharts bar-title="CCC" :bar-value="5" :selBarTitle="selBarTitle"></cc-barCharts>
</view>
</view>
HTML代碼實現部分
<template>
<view class="content">
<view style="background: white;padding-bottom: 20px; margin:10px 10px;">
<view style="margin: 10px; font-size: 14px;color: #444444;">該公司所屬行業分類等級</view>
<view v-if="true" style="margin-top:208px;margin-left: 10px;display: flex;">
<!--bar-title:柱形圖標題 bar-value:柱形圖值 selBarTitle:選中的柱形圖標題 -->
<cc-barCharts bar-title="AAA" :bar-value="20" :selBarTitle="selBarTitle"></cc-barCharts>
<cc-barCharts bar-title="AA" :bar-value="10" :selBarTitle="selBarTitle"></cc-barCharts>
<cc-barCharts bar-title="A" :bar-value="16" :selBarTitle="selBarTitle"></cc-barCharts>
<cc-barCharts bar-title="BBB" :bar-value="14" :selBarTitle="selBarTitle"></cc-barCharts>
<cc-barCharts bar-title="BB" :bar-value="30" :selBarTitle="selBarTitle"></cc-barCharts>
<cc-barCharts bar-title="B" :bar-value="5" :selBarTitle="selBarTitle"></cc-barCharts>
<cc-barCharts bar-title="CCC" :bar-value="5" :selBarTitle="selBarTitle"></cc-barCharts>
</view>
</view>
<!-- 自定義等分底部菜單按鈕 -->
<view class="bottomV">
<!-- upTextArr:上面標題數組 downTextArr:下麵標題數組 selIndex:選擇序列 selColor:選中顏色 @menuClick:按鈕點擊事件 -->
<cc-BotMenu :upTextArr="uptextArr" :downTextArr="downTextArr" :selIndex="selIndex" selColor="orange"
@menuClick="menuClick"></cc-BotMenu>
</view>
</view>
</template>
<script>
export default {
data() {
return {
selBarTitle: 'BB',
uptextArr: ['1', "2", "3", "4", '5'],
downTextArr: ['國家標準', "行業標準", "省級標準", "團體標準", '企業標準'],
selIndex: "0",
}
},
onLoad() {
},
methods: {
// 按鈕點擊事件
menuClick(tag) {
// 點擊序列賦值
this.selIndex = tag;
}
}
}
</script>
<style>
page {
background-color: #f9f9f9;
}
.content {
display: flex;
flex-direction: column;
}
.bottomV {
/* 設置視圖置頂 */
display: flex;
flex-direction: row;
position: fixed;
margin-top: calc(100vh - 168px);
height: 60px;
z-index: 9999 !important;
width: 100vw;
background-color: white;
padding-left: 0px;
padding-bottom: 20px;
}
</style>