123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145 |
- <template>
- <view class="u-demo">
- <view class="u-demo-wrap">
- <view class="u-demo-title">演示效果</view>
- <view class="u-demo-area">
- <u-row :justify="justify" @click="rowClick">
- <u-col :span="span" :offset="offset" @click="click" stop>
- <view class="demo-layout bg-purple-dark">
- </view>
- </u-col>
- <u-col :span="span" :offset="offset">
- <view class="demo-layout bg-purple-dark">
- </view>
- </u-col>
- <u-col :span="span" :offset="offset">
- <view class="demo-layout bg-purple-dark">
- </view>
- </u-col>
- </u-row>
- </view>
- </view>
- <view class="u-config-wrap">
- <view class="u-config-title u-border-bottom">
- 参数配置
- </view>
- <view class="u-config-item">
- <view class="u-item-title">每个栅格占用栏数(演示共3个栅格)</view>
- <u-subsection :current="2" :list="[1, 2, 3, 4]" @change="spanChange"></u-subsection>
- </view>
- <view class="u-config-item">
- <view class="u-item-title">分栏偏移</view>
- <u-subsection :list="[0, 1, 2, 3]" @change="offsetChange"></u-subsection>
- </view>
- <!-- #ifndef MP -->
- <view class="u-config-item">
- <view class="u-item-title">水平排列方式(微信小程序无效)</view>
- <u-subsection :list="['start', 'end', 'around', 'between']" @change="justifyChange"></u-subsection>
- </view>
- <!-- #endif -->
- </view>
- </view>
- </template>
- <script>
- export default {
- data() {
- return {
- span: 3,
- offset: 0,
- justify: 'start'
- }
- },
- methods: {
- click() {
- console.log('col click');
- },
- rowClick() {
- console.log('row click');
- },
- spanChange(e) {
- switch (e) {
- case 0:
- this.span = 1;
- break;
- case 1:
- this.span = 2;
- break;
- case 2:
- this.span = 3;
- break;
- case 3:
- this.span = 4;
- break;
- case 4:
- this.span = 5;
- break;
- }
- },
- offsetChange(e) {
- switch (e) {
- case 0:
- this.offset = 0;
- break;
- case 1:
- this.offset = 1;
- break;
- case 2:
- this.offset = 2;
- break;
- case 3:
- this.offset = 3;
- break;
- }
- },
- justifyChange(e) {
- switch (e) {
- case 0:
- this.justify = 'start';
- break;
- case 1:
- this.justify = 'end';
- break;
- case 2:
- this.justify = 'around';
- break;
- case 3:
- this.justify = 'between';
- break;
- }
- },
- }
- }
- </script>
- <style scoped lang="scss">
- .demo-layout {
- height: 70rpx;
- border-radius: 8rpx;
- margin: 20rpx 0;
- }
- .bg-purple {
- background: #d3dce6;
- }
- .bg-purple-light {
- background: #e5e9f2;
- }
- .bg-purple-dark {
- background: #99a9bf;
- }
- // H5中,电脑端文档演示时,可能会导致演示块挤出边界,特别处理。
- // 真实使用环境不会产生此问题
- /* #ifdef H5 */
- .u-demo-area /deep/ .u-row {
- display: flex;
- flex-wrap: wrap;
- }
- /* #endif */
- </style>
|