1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465 |
- Component({
- properties: {
- list: Array,
- callback: Function
- },
- data: {
- safeAreaBot: 0,
- show: false,
- showList: [],
- extend: []
- },
- lifetimes: {
- attached: function () {
- wx.getSystemInfo({
- success: res => {
- this.setData({
- safeAreaBot: res.screenHeight - res.safeArea.bottom
- })
- }
- })
- },
- },
- observers: {
- 'list': function (numberA, numberB) {
- if (numberA.length >= 5) {
- let showList = numberA.splice(0, 3);
- showList.push({
- icon: "icon-gengduo",
- label: "更多"
- })
- this.setData({
- showList,
- extend: numberA
- })
- } else {
- this.setData({
- showList: numberA
- })
- }
- }
- },
- options: {
- addGlobalClass: true
- },
- methods: {
- onClose() {
- this.setData({
- show: false
- })
- },
- callback(e) {
- const {
- item
- } = e.currentTarget.dataset;
- if (item.label == '更多') return this.setData({
- show: true
- })
- if (this.data.show) this.setData({
- show: false
- })
- if (!item) return;
- this.triggerEvent("callback", item)
- }
- }
- })
|