Skip to content

Commit 9ed1be6

Browse files
aQingYun7insummer
authored andcommitted
feat:1.新增water-flow组件,示例demo新增贡献人员信息 (#306)
* feat:1.新增water-flow组件2.示例demo新增贡献人员信息 * fix修改water-flow组件传入类型错误提示信息
1 parent 9a77f6a commit 9ed1be6

File tree

34 files changed

+319
-177
lines changed

34 files changed

+319
-177
lines changed

dist/water-flow-item/index.js

Lines changed: 0 additions & 23 deletions
This file was deleted.

dist/water-flow-item/index.json

Lines changed: 0 additions & 4 deletions
This file was deleted.

dist/water-flow-item/index.wxml

Lines changed: 0 additions & 3 deletions
This file was deleted.

dist/water-flow-item/index.wxss

Lines changed: 0 additions & 1 deletion
This file was deleted.

dist/water-flow/index.js

Lines changed: 52 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,34 +1,74 @@
1+
// pages/components/water/index.js
12
Component({
23
/**
34
* 组件的属性列表
45
*/
5-
externalClasses: ['l-class'],
66
properties: {
7-
columnCount: {
8-
type: Number,
9-
value: 2
10-
},
11-
columnGap: {
12-
type: String,
13-
value: '20rpx'
14-
}
15-
},
16-
17-
relations: {
187

198
},
209

2110
/**
2211
* 组件的初始数据
2312
*/
2413
data: {
14+
data: [],
15+
leftData: [],
16+
rightData: []
17+
},
2518

19+
attached() {
20+
this._init()
2621
},
2722

2823
/**
2924
* 组件的方法列表
3025
*/
3126
methods: {
27+
_init() {
28+
wx.lin = wx.lin || {}
29+
wx.lin.renderWaterFlow = (data = [], success) => {
30+
if (Object.prototype.toString.call(data) !== '[object Array]') {
31+
console.error("[data]参数类型错误,渲染失败");
32+
return false;
33+
}
34+
this._select(data).then(() => {
35+
success && success()
36+
})
37+
}
38+
},
39+
_select(data) {
40+
const query = wx.createSelectorQuery().in(this)
41+
this.columnNodes = query.selectAll('#left, #right')
42+
43+
return new Promise((resolve, reject) => {
44+
this._render(data, 0, () => {
45+
resolve()
46+
})
47+
})
48+
},
49+
_render(data, i, success) {
50+
if (data.length > i) {
51+
this.columnNodes.boundingClientRect().exec(res => {
52+
const rects = res[0]
53+
const leftHeight = rects[0].height
54+
const rightHeight = rects[1].height
3255

56+
if (leftHeight <= rightHeight) {
57+
this.data.leftData.push(data[i])
58+
} else {
59+
this.data.rightData.push(data[i])
60+
}
61+
62+
this.setData({
63+
leftData: this.data.leftData,
64+
rightData: this.data.rightData
65+
}, _ => {
66+
this._render(data, ++i, success)
67+
})
68+
})
69+
} else {
70+
success && success()
71+
}
72+
}
3373
}
3474
})

dist/water-flow/index.json

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
{
22
"component": true,
3-
"usingComponents": {
4-
"l-water-flow-item": "../water-flow-item/index"
3+
"usingComponents": {},
4+
"componentGenerics": {
5+
"l-water-flow-item": true
56
}
6-
}
7+
}

dist/water-flow/index.wxml

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,16 @@
1-
<view class="l-class water-flow-container"
2-
style="column-count:{{columnCount}};column-gap:{{columnGap}}">
3-
<slot/>
1+
<view class="l-class water-flow-container">
2+
<view class="water-column">
3+
<view id="left">
4+
<block wx:for="{{leftData}}" wx:key="{{index}}">
5+
<l-water-flow-item data="{{item}}" />
6+
</block>
7+
</view>
8+
</view>
9+
<view class="water-column">
10+
<view id="right">
11+
<block wx:for="{{rightData}}" wx:key="{{index}}">
12+
<l-water-flow-item data="{{item}}" />
13+
</block>
14+
</view>
15+
</view>
416
</view>

dist/water-flow/index.wxss

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
.water-flow-container{margin:0 auto}
1+
.water-flow-container{display:flex;width:100%;box-sizing:border-box}.water-column{flex:1}

examples/dist/water-flow-item/index.js

Lines changed: 0 additions & 23 deletions
This file was deleted.

examples/dist/water-flow-item/index.json

Lines changed: 0 additions & 4 deletions
This file was deleted.

0 commit comments

Comments
 (0)