🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
[TOC] > [参考](https://ext.dcloud.net.cn/plugin?id=239) ## 快速入门 ### 水平垂直居中 ``` <view class="flex align-center justify-center "> <image class="image-icon " src="@/static/edit.jpg" mode="aspectFit"></image> <image class="image-icon margin-left" src="@/static/add.jpg" mode="aspectFit"></image> </view> ``` ### 卡片布局 ``` <view class="cu-card article " > <view class="cu-item shadow"> ... </view> </view> ``` ## 开始使用 下载源码解压,复制根目录的 /colorui 文件夹到你的根目录 `App.vue` 引入关键Css `main.css`,`icon.css` ``` <style> @import "colorui/main.css"; @import "colorui/icon.css"; @import "app.css"; /* 你的项目css */ .... </style> ``` ## 使用自定义导航栏 导航栏作为常用组件有做简单封装,当然你也可以直接复制代码结构自己修改,达到个性化目的。 App.vue 获得系统信息 ``` onLaunch: function() { uni.getSystemInfo({ success: function(e) { // #ifndef MP Vue.prototype.StatusBar = e.statusBarHeight; if (e.platform == 'android') { Vue.prototype.CustomBar = e.statusBarHeight + 50; } else { Vue.prototype.CustomBar = e.statusBarHeight + 45; }; // #endif // #ifdef MP-WEIXIN Vue.prototype.StatusBar = e.statusBarHeight; let custom = wx.getMenuButtonBoundingClientRect(); Vue.prototype.Custom = custom; Vue.prototype.CustomBar = custom.bottom + custom.top - e.statusBarHeight; // #endif // #ifdef MP-ALIPAY Vue.prototype.StatusBar = e.statusBarHeight; Vue.prototype.CustomBar = e.statusBarHeight + e.titleBarHeight; // #endif } }) }, ``` pages.json 配置取消系统导航栏 ``` "globalStyle": { "navigationStyle": "custom" }, ``` 复制代码结构可以直接使用,注意全局变量的获取。 使用封装,在`main.js` 引入 cu-custom 组件。 ``` import cuCustom from './colorui/components/cu-custom.vue' Vue.component('cu-custom',cuCustom) ``` page.vue 页面可以直接调用了 ``` <cu-custom bgColor="bg-gradual-blue" :isBack="true"> <block slot="backText">返回</block> <block slot="content">导航栏</block> </cu-custom> ``` | 参数 | 作用 | 类型 | 默认值 | | --- | --- | --- | --- | | bgColor | 背景颜色类名 | String | '' | | isBack | 是否开启返回 | Boolean | false | | bgImage | 背景图片路径 | String | '' | | slot块 | 作用 | | --- | --- | | backText | 返回时的文字 | | content | 中间区域 | | right | 右侧区域(小程序端可使用范围很窄!) | ## 使用自定义Tabbar 这部分暂时没有封装,思路可以参考下我的源码,原理是一个主页面引入多个页面,在主页面进行切换显示。这样可以解决切换时闪烁的问题。