RegMs If 4 éve
szülő
commit
664f5a4828

+ 2 - 2
.vscode/settings.json

@@ -1,3 +1,3 @@
-{
-  "editor.formatOnSave": true
+{
+  "editor.formatOnSave": true
 }

+ 69 - 69
cloudfunctions/createPublisher/index.js

@@ -1,70 +1,70 @@
-// 云函数入口文件
-const cloud = require('wx-server-sdk')
-
-cloud.init()
-const db = cloud.database()
-
-// 云函数入口函数
-exports.main = async (event, context) => {
-  let {
-    OPENID
-  } = cloud.getWXContext()
-
-  const code_check = await db.collection('invite').where({
-    code: event.code
-  }).get()
-  if (code_check.data.length === 0) {
-    return {
-      errMsg: '邀请码不存在'
-    }
-  }
-  if (code_check.data[0].pub_id !== '') {
-    return {
-      errMsg: '邀请码已被使用'
-    }
-  }
-
-  const name_check = await db.collection('publisher').where({
-    name: event.name
-  }).get()
-  if (name_check.data.length !== 0) {
-    return {
-      errMsg: '名称已存在'
-    }
-  }
-
-  const publisher = await db.collection('publisher').add({
-    data: {
-      name: event.name,
-      type: event.type,
-      level: event.level,
-      intro: event.intro,
-      avatar: event.avatar,
-      phone: event.phone,
-      email: event.email,
-      qq: event.qq,
-      wechat: event.wechat,
-      reside_time: new Date()
-    }
-  })
-
-  await db.collection('invite').where({
-    code: event.code
-  }).update({
-    data: {
-      pub_id: publisher._id,
-      use_time: new Date()
-    }
-  })
-
-  await db.collection('manager').add({
-    data: {
-      pub_id: publisher._id,
-      user_id: OPENID,
-      title: '',
-      role: '拥有者'
-    }
-  })
-
-  return publisher
+// 云函数入口文件
+const cloud = require('wx-server-sdk')
+
+cloud.init()
+const db = cloud.database()
+
+// 云函数入口函数
+exports.main = async (event, context) => {
+  let {
+    OPENID
+  } = cloud.getWXContext()
+
+  const code_check = await db.collection('invite').where({
+    code: event.code
+  }).get()
+  if (code_check.data.length === 0) {
+    return {
+      errMsg: '邀请码不存在'
+    }
+  }
+  if (code_check.data[0].pub_id !== '') {
+    return {
+      errMsg: '邀请码已被使用'
+    }
+  }
+
+  const name_check = await db.collection('publisher').where({
+    name: event.name
+  }).get()
+  if (name_check.data.length !== 0) {
+    return {
+      errMsg: '名称已存在'
+    }
+  }
+
+  const publisher = await db.collection('publisher').add({
+    data: {
+      name: event.name,
+      type: event.type,
+      level: event.level,
+      intro: event.intro,
+      avatar: event.avatar,
+      phone: event.phone,
+      email: event.email,
+      qq: event.qq,
+      wechat: event.wechat,
+      reside_time: new Date()
+    }
+  })
+
+  await db.collection('invite').where({
+    code: event.code
+  }).update({
+    data: {
+      pub_id: publisher._id,
+      use_time: new Date()
+    }
+  })
+
+  await db.collection('manager').add({
+    data: {
+      pub_id: publisher._id,
+      user_id: OPENID,
+      title: '',
+      role: '拥有者'
+    }
+  })
+
+  return publisher
 }

+ 5 - 5
cloudfunctions/getUser/config.json

@@ -1,6 +1,6 @@
-{
-  "permissions": {
-    "openapi": [
-    ]
-  }
+{
+  "permissions": {
+    "openapi": [
+    ]
+  }
 }

+ 19 - 19
cloudfunctions/getUser/index.js

@@ -1,20 +1,20 @@
-// 云函数入口文件
-const cloud = require('wx-server-sdk')
-
-cloud.init()
-const db = cloud.database()
-
-// 云函数入口函数
-exports.main = async (event, context) => {
-  let {
-    OPENID
-  } = cloud.getWXContext()
-
-  try {
-    return await db.collection('user').doc(OPENID).get()
-  } catch (err) {
-    return {
-      errMsg: 'no such user'
-    }
-  }
+// 云函数入口文件
+const cloud = require('wx-server-sdk')
+
+cloud.init()
+const db = cloud.database()
+
+// 云函数入口函数
+exports.main = async (event, context) => {
+  let {
+    OPENID
+  } = cloud.getWXContext()
+
+  try {
+    return await db.collection('user').doc(OPENID).get()
+  } catch (err) {
+    return {
+      errMsg: 'no such user'
+    }
+  }
 }

+ 13 - 13
cloudfunctions/getUser/package.json

@@ -1,14 +1,14 @@
-{
-  "name": "getCurrentUser",
-  "version": "1.0.0",
-  "description": "",
-  "main": "index.js",
-  "scripts": {
-    "test": "echo \"Error: no test specified\" && exit 1"
-  },
-  "author": "",
-  "license": "ISC",
-  "dependencies": {
-    "wx-server-sdk": "~2.4.0"
-  }
+{
+  "name": "getCurrentUser",
+  "version": "1.0.0",
+  "description": "",
+  "main": "index.js",
+  "scripts": {
+    "test": "echo \"Error: no test specified\" && exit 1"
+  },
+  "author": "",
+  "license": "ISC",
+  "dependencies": {
+    "wx-server-sdk": "~2.4.0"
+  }
 }

+ 5 - 5
cloudfunctions/updateUser/config.json

@@ -1,6 +1,6 @@
-{
-  "permissions": {
-    "openapi": [
-    ]
-  }
+{
+  "permissions": {
+    "openapi": [
+    ]
+  }
 }

+ 25 - 25
cloudfunctions/updateUser/index.js

@@ -1,26 +1,26 @@
-// 云函数入口文件
-const cloud = require('wx-server-sdk')
-
-cloud.init()
-const db = cloud.database()
-
-// 云函数入口函数
-exports.main = async (event, context) => {
-  let {
-    OPENID
-  } = cloud.getWXContext()
-
-  try {
-    return await db.collection('user').doc(OPENID).update({
-      data: {
-        name: event.name,
-        avatar: event.avatar,
-        gender: event.gender
-      }
-    })
-  } catch (err) {
-    return {
-      errMsg: 'no such user'
-    }
-  }
+// 云函数入口文件
+const cloud = require('wx-server-sdk')
+
+cloud.init()
+const db = cloud.database()
+
+// 云函数入口函数
+exports.main = async (event, context) => {
+  let {
+    OPENID
+  } = cloud.getWXContext()
+
+  try {
+    return await db.collection('user').doc(OPENID).update({
+      data: {
+        name: event.name,
+        avatar: event.avatar,
+        gender: event.gender
+      }
+    })
+  } catch (err) {
+    return {
+      errMsg: 'no such user'
+    }
+  }
 }

+ 13 - 13
cloudfunctions/updateUser/package.json

@@ -1,14 +1,14 @@
-{
-  "name": "updateUser",
-  "version": "1.0.0",
-  "description": "",
-  "main": "index.js",
-  "scripts": {
-    "test": "echo \"Error: no test specified\" && exit 1"
-  },
-  "author": "",
-  "license": "ISC",
-  "dependencies": {
-    "wx-server-sdk": "~2.4.0"
-  }
+{
+  "name": "updateUser",
+  "version": "1.0.0",
+  "description": "",
+  "main": "index.js",
+  "scripts": {
+    "test": "echo \"Error: no test specified\" && exit 1"
+  },
+  "author": "",
+  "license": "ISC",
+  "dependencies": {
+    "wx-server-sdk": "~2.4.0"
+  }
 }

+ 62 - 62
miniprogram/app.json

@@ -1,63 +1,63 @@
-{
-  "pages": [
-    "pages/main/main",
-    "pages/publisher/publisher",
-    "pages/publisherPage/publisherPage",
-    "pages/user/user",
-    "pages/message/message",
-    "pages/search/search",
-    "pages/setting/setting",
-    "pages/activity/activity",
-    "pages/myFollow/myFollow",
-    "pages/publisherLogin/publisherLogin",
-    "pages/activityPublish/activityPublish",
-    "pages/myQuestion/myQuestion",
-    "pages/receivedQuestion/receivedQuestion",
-    "pages/publisherInfoChange/publisherInfoChange",
-    "pages/aboutUs/aboutUs",
-    "pages/opinion/opinion",
-    "pages/myPublish/myPublish",
-    "pages/administratorSetting/administratorSetting",
-    "pages/myColor/myColor",
-    "pages/myFavor/myFavor"
-  ],
-  "window": {
-    "backgroundTextStyle": "light",
-    "navigationBarBackgroundColor": "#009195",
-    "navigationBarTitleText": "汇听",
-    "navigationBarTextStyle": "white"
-  },
-  "style": "v2",
-  "sitemapLocation": "sitemap.json",
-  "tabBar": {
-    "selectedColor": "#009195",
-    "backgroundColor": "#ffffff",
-    "color": "#9E9E9E",
-    "borderStyle": "white",
-    "list": [{
-        "pagePath": "pages/main/main",
-        "text": "首页",
-        "iconPath": "images/tabbar/1.1.png",
-        "selectedIconPath": "images/tabbar/1.2.png"
-      },
-      {
-        "pagePath": "pages/search/search",
-        "text": "搜索",
-        "iconPath": "images/tabbar/2.1.png",
-        "selectedIconPath": "images/tabbar/2.2.png"
-      },
-      {
-        "pagePath": "pages/message/message",
-        "text": "消息",
-        "iconPath": "images/tabbar/3.1.png",
-        "selectedIconPath": "images/tabbar/3.2.png"
-      },
-      {
-        "pagePath": "pages/user/user",
-        "text": "我的",
-        "iconPath": "images/tabbar/4.1.png",
-        "selectedIconPath": "images/tabbar/4.2.png"
-      }
-    ]
-  }
+{
+  "pages": [
+    "pages/main/main",
+    "pages/publisher/publisher",
+    "pages/publisherPage/publisherPage",
+    "pages/user/user",
+    "pages/message/message",
+    "pages/search/search",
+    "pages/setting/setting",
+    "pages/activity/activity",
+    "pages/myFollow/myFollow",
+    "pages/publisherLogin/publisherLogin",
+    "pages/activityPublish/activityPublish",
+    "pages/myQuestion/myQuestion",
+    "pages/receivedQuestion/receivedQuestion",
+    "pages/publisherInfoChange/publisherInfoChange",
+    "pages/aboutUs/aboutUs",
+    "pages/opinion/opinion",
+    "pages/myPublish/myPublish",
+    "pages/administratorSetting/administratorSetting",
+    "pages/myColor/myColor",
+    "pages/myFavor/myFavor"
+  ],
+  "window": {
+    "backgroundTextStyle": "light",
+    "navigationBarBackgroundColor": "#009195",
+    "navigationBarTitleText": "汇听",
+    "navigationBarTextStyle": "white"
+  },
+  "style": "v2",
+  "sitemapLocation": "sitemap.json",
+  "tabBar": {
+    "selectedColor": "#009195",
+    "backgroundColor": "#ffffff",
+    "color": "#9E9E9E",
+    "borderStyle": "white",
+    "list": [{
+        "pagePath": "pages/main/main",
+        "text": "首页",
+        "iconPath": "images/tabbar/1.1.png",
+        "selectedIconPath": "images/tabbar/1.2.png"
+      },
+      {
+        "pagePath": "pages/search/search",
+        "text": "搜索",
+        "iconPath": "images/tabbar/2.1.png",
+        "selectedIconPath": "images/tabbar/2.2.png"
+      },
+      {
+        "pagePath": "pages/message/message",
+        "text": "消息",
+        "iconPath": "images/tabbar/3.1.png",
+        "selectedIconPath": "images/tabbar/3.2.png"
+      },
+      {
+        "pagePath": "pages/user/user",
+        "text": "我的",
+        "iconPath": "images/tabbar/4.1.png",
+        "selectedIconPath": "images/tabbar/4.2.png"
+      }
+    ]
+  }
 }

+ 75 - 75
miniprogram/app.wxss

@@ -1,76 +1,76 @@
-/**app.wxss**/
-.container {
-  height: 100%;
-  display: flex;
-  flex-direction: column;
-  align-items: center;
-  justify-content: space-between;
-  padding: 200rpx 0;
-  box-sizing: border-box;
-}
-
-.dark-primary-color {
-  background: #303F9F;
-}
-
-.default-primary-color {
-  background: #3F51B5;
-}
-
-.dark-primary-color-font {
-  color: #303F9F;
-}
-
-.default-primary-color-font {
-  color: #3F51B5;
-}
-
-.light-primary-color {
-  background: #C5CAE9;
-}
-
-.accent-color {
-  background: #FF4081;
-}
-
-.primary-text-color {
-  color: #212121;
-}
-
-.divider-color {
-  background: #BDBDBD;
-}
-
-.block-background-color {
-  background: #F0F0F0;
-}
-
-/* new color here */
-
-.primary-text-color {
-  color: #009195 !important;
-}
-
-.primary-background-color {
-  background: #009195 !important;
-}
-
-.primary-border-color {
-  border: 2rpx solid #009195 !important;
-}
-
-.secondary-text-color {
-  color: #707070 !important;
-}
-
-.secondary-background-color {
-  background: #EDEDED !important;
-}
-
-.white-text-color {
-  color: #FFFFFF !important;
-}
-
-page {
-  background: #EDEDED;
+/**app.wxss**/
+.container {
+  height: 100%;
+  display: flex;
+  flex-direction: column;
+  align-items: center;
+  justify-content: space-between;
+  padding: 200rpx 0;
+  box-sizing: border-box;
+}
+
+.dark-primary-color {
+  background: #303F9F;
+}
+
+.default-primary-color {
+  background: #3F51B5;
+}
+
+.dark-primary-color-font {
+  color: #303F9F;
+}
+
+.default-primary-color-font {
+  color: #3F51B5;
+}
+
+.light-primary-color {
+  background: #C5CAE9;
+}
+
+.accent-color {
+  background: #FF4081;
+}
+
+.primary-text-color {
+  color: #212121;
+}
+
+.divider-color {
+  background: #BDBDBD;
+}
+
+.block-background-color {
+  background: #F0F0F0;
+}
+
+/* new color here */
+
+.primary-text-color {
+  color: #009195 !important;
+}
+
+.primary-background-color {
+  background: #009195 !important;
+}
+
+.primary-border-color {
+  border: 2rpx solid #009195 !important;
+}
+
+.secondary-text-color {
+  color: #707070 !important;
+}
+
+.secondary-background-color {
+  background: #EDEDED !important;
+}
+
+.white-text-color {
+  color: #FFFFFF !important;
+}
+
+page {
+  background: #EDEDED;
 }

+ 3 - 3
miniprogram/components/myButton/myButton.json

@@ -1,4 +1,4 @@
-{
-  "component": true,
-  "usingComponents": {}
+{
+  "component": true,
+  "usingComponents": {}
 }

+ 5 - 5
miniprogram/components/myButton/myButton.wxml

@@ -1,6 +1,6 @@
-<!--components/myButton/myButton.wxml-->
-<button
-  class="{{'my-button ' + (type === 'primary' ? 'primary-background-color white-text-color ' : 'secondary-background-color primary-border-color ') + (size === 'large' && 'large-button ')}}"
-  bind="handleTap" form-type="submit">
-  <slot></slot>
+<!--components/myButton/myButton.wxml-->
+<button
+  class="{{'my-button ' + (type === 'primary' ? 'primary-background-color white-text-color ' : 'secondary-background-color primary-border-color ') + (size === 'large' && 'large-button ')}}"
+  bind="handleTap" form-type="submit">
+  <slot></slot>
 </button>

+ 8 - 8
miniprogram/components/myButton/myButton.wxss

@@ -1,9 +1,9 @@
-/* components/myButton/myButton.wxss */
-.my-button {
-  font-size: 30rpx;
-  border-radius: 50rpx;
-  width: 250rpx !important;
-  font-weight: normal !important;
-}
-
+/* components/myButton/myButton.wxss */
+.my-button {
+  font-size: 30rpx;
+  border-radius: 50rpx;
+  width: 250rpx !important;
+  font-weight: normal !important;
+}
+
 .large-button {}

+ 38 - 38
miniprogram/pages/aboutUs/aboutUs.wxss

@@ -1,39 +1,39 @@
-.con {
-  display: flex;
-  flex-direction: column;
-  align-items: center;
-}
-
-.activity-detail {
-  margin: 15rpx 50rpx;
-  font-size: 30rpx;
-}
-
-.icon {
-  height: 150rpx;
-  width: 300rpx;
-  margin-top: 200rpx;
-  margin-bottom: 200rpx;
-}
-
-.btn-row {
-  display: flex;
-}
-
-.button {
-  padding: 0rpx;
-  font-size: 30rpx;
-  border-radius: 30rpx;
-  width: 200rpx !important;
-  height: 100rpx !important;
-  margin: 10rpx 10rpx !important;
-  display: flex;
-  align-items: center;
-  justify-content: center;
-  font-weight: normal !important;
-  border: none !important;
-}
-
-.sub-title {
-  margin: 40rpx;
+.con {
+  display: flex;
+  flex-direction: column;
+  align-items: center;
+}
+
+.activity-detail {
+  margin: 15rpx 50rpx;
+  font-size: 30rpx;
+}
+
+.icon {
+  height: 150rpx;
+  width: 300rpx;
+  margin-top: 200rpx;
+  margin-bottom: 200rpx;
+}
+
+.btn-row {
+  display: flex;
+}
+
+.button {
+  padding: 0rpx;
+  font-size: 30rpx;
+  border-radius: 30rpx;
+  width: 200rpx !important;
+  height: 100rpx !important;
+  margin: 10rpx 10rpx !important;
+  display: flex;
+  align-items: center;
+  justify-content: center;
+  font-weight: normal !important;
+  border: none !important;
+}
+
+.sub-title {
+  margin: 40rpx;
 }

+ 58 - 58
miniprogram/pages/main/main.wxml

@@ -1,59 +1,59 @@
-<!-- 为首页,含component:itemCard;data:mainData.js -->
-<!-- 更新了filter中的活动内容,但是由于有二级标题、还未给出页面美化需求,因此仅在js文件中更新,wxml未更新完全-->
-<view class="page">
-  <view class="filter">
-    <view class="filter-item secondary-text-color" data-filter-list="1" bindtap="toggleFilterList">
-      <text>{{filterItem[1] == "" ? filterName[1].title : filterItem[1]}}</text>
-      <image class="filter-arrow" id="arrow1" mode="aspectFit" src="/images/arrow.png"></image>
-    </view>
-    <view class="filter-line"></view>
-    <view class="filter-item secondary-text-color" data-filter-list="2" bindtap="toggleFilterList">
-      <text>{{filterItem[2] == "" ? filterName[2].title : filterItem[2]}}</text>
-      <image class="filter-arrow" id="arrow2" mode="aspectFit" src="/images/arrow.png"></image>
-    </view>
-    <view class="filter-line"></view>
-    <view class="filter-item secondary-text-color" data-filter-list="3" bindtap="toggleFilterList">
-      <text>{{filterItem[3] == "" ? filterName[3].title : filterItem[3]}}</text>
-      <image class="filter-arrow" id="arrow3" mode="aspectFit" src="/images/arrow.png"></image>
-    </view>
-  </view>
-  <view class="filter-lists">
-    <view wx:if="{{filterList == 1}}" class="filter-list" id="list1">
-      <view wx:for="{{filterName[1].children}}" wx:for-item="item" wx:key="title">
-        <view class="filter-list-title primary-text-color">{{item.title}}</view>
-        <view wx:for="{{item.children}}" wx:for-item="item" wx:key="title">
-          <view wx:if="{{!item.children}}" class="filter-list-item secondary-text-color" data-filter-list="1"
-            data-filter-item="{{item}}" bindtap="toggleFilterItem">{{item}}<view wx:if="{{filterItem[1] == item}}">✔
-            </view>
-          </view>
-          <view class="filter-list-subtitle primary-text-color" wx:if="{{item.children}}">{{item.title}}</view>
-          <view class="filter-list-item secondary-text-color" wx:for="{{item.children}}" wx:for-item="title"
-            wx:key="title" data-filter-list="1" data-filter-item="{{title}}" bindtap="toggleFilterItem">{{title}}<view
-              wx:if="{{filterItem[1] == title}}">✔</view>
-          </view>
-        </view>
-      </view>
-    </view>
-    <view class="filter-list"></view>
-    <view wx:if="{{filterList == 2}}" class="filter-list" id="list2">
-      <view class="filter-list-item secondary-text-color" wx:for="{{filterName[2].children}}" wx:for-item="title"
-        wx:key="*this" data-filter-list="2" data-filter-item="{{title}}" bindtap="toggleFilterItem">{{title}}<view
-          wx:if="{{filterItem[2] == title}}">✔</view>
-      </view>
-    </view>
-    <view class="filter-list"></view>
-    <view wx:if="{{filterList == 3}}" class="filter-list" id="list3">
-      <view class="filter-list-item secondary-text-color" wx:for="{{filterName[3].children}}" wx:for-item="title"
-        wx:key="*this" data-filter-list="3" data-filter-item="{{title}}" bindtap="toggleFilterItem">{{title}}<view
-          wx:if="{{filterItem[3] == title}}">✔</view>
-      </view>
-    </view>
-  </view>
-  <view style="margin-top: 60rpx;">
-    <view wx:for="{{mainDatas}}" wx:for-item="item" wx:for-index="index" wx:key="_id">
-      <itemCard
-        wx:if="{{(filterItem[1] == '' || filterItem[1] == item.attribute[0]) && (filterItem[2] == '' || filterItem[2] == item.publisherAttribute[0]) && (filterItem[3] == '' || filterItem[3] == item.supply[0])}}"
-        item="{{item}}" bindfiltermsgtype="filterMsgType" />
-    </view>
-  </view>
+<!-- 为首页,含component:itemCard;data:mainData.js -->
+<!-- 更新了filter中的活动内容,但是由于有二级标题、还未给出页面美化需求,因此仅在js文件中更新,wxml未更新完全-->
+<view class="page">
+  <view class="filter">
+    <view class="filter-item secondary-text-color" data-filter-list="1" bindtap="toggleFilterList">
+      <text>{{filterItem[1] == "" ? filterName[1].title : filterItem[1]}}</text>
+      <image class="filter-arrow" id="arrow1" mode="aspectFit" src="/images/arrow.png"></image>
+    </view>
+    <view class="filter-line"></view>
+    <view class="filter-item secondary-text-color" data-filter-list="2" bindtap="toggleFilterList">
+      <text>{{filterItem[2] == "" ? filterName[2].title : filterItem[2]}}</text>
+      <image class="filter-arrow" id="arrow2" mode="aspectFit" src="/images/arrow.png"></image>
+    </view>
+    <view class="filter-line"></view>
+    <view class="filter-item secondary-text-color" data-filter-list="3" bindtap="toggleFilterList">
+      <text>{{filterItem[3] == "" ? filterName[3].title : filterItem[3]}}</text>
+      <image class="filter-arrow" id="arrow3" mode="aspectFit" src="/images/arrow.png"></image>
+    </view>
+  </view>
+  <view class="filter-lists">
+    <view wx:if="{{filterList == 1}}" class="filter-list" id="list1">
+      <view wx:for="{{filterName[1].children}}" wx:for-item="item" wx:key="title">
+        <view class="filter-list-title primary-text-color">{{item.title}}</view>
+        <view wx:for="{{item.children}}" wx:for-item="item" wx:key="title">
+          <view wx:if="{{!item.children}}" class="filter-list-item secondary-text-color" data-filter-list="1"
+            data-filter-item="{{item}}" bindtap="toggleFilterItem">{{item}}<view wx:if="{{filterItem[1] == item}}">✔
+            </view>
+          </view>
+          <view class="filter-list-subtitle primary-text-color" wx:if="{{item.children}}">{{item.title}}</view>
+          <view class="filter-list-item secondary-text-color" wx:for="{{item.children}}" wx:for-item="title"
+            wx:key="title" data-filter-list="1" data-filter-item="{{title}}" bindtap="toggleFilterItem">{{title}}<view
+              wx:if="{{filterItem[1] == title}}">✔</view>
+          </view>
+        </view>
+      </view>
+    </view>
+    <view class="filter-list"></view>
+    <view wx:if="{{filterList == 2}}" class="filter-list" id="list2">
+      <view class="filter-list-item secondary-text-color" wx:for="{{filterName[2].children}}" wx:for-item="title"
+        wx:key="*this" data-filter-list="2" data-filter-item="{{title}}" bindtap="toggleFilterItem">{{title}}<view
+          wx:if="{{filterItem[2] == title}}">✔</view>
+      </view>
+    </view>
+    <view class="filter-list"></view>
+    <view wx:if="{{filterList == 3}}" class="filter-list" id="list3">
+      <view class="filter-list-item secondary-text-color" wx:for="{{filterName[3].children}}" wx:for-item="title"
+        wx:key="*this" data-filter-list="3" data-filter-item="{{title}}" bindtap="toggleFilterItem">{{title}}<view
+          wx:if="{{filterItem[3] == title}}">✔</view>
+      </view>
+    </view>
+  </view>
+  <view style="margin-top: 60rpx;">
+    <view wx:for="{{mainDatas}}" wx:for-item="item" wx:for-index="index" wx:key="_id">
+      <itemCard
+        wx:if="{{(filterItem[1] == '' || filterItem[1] == item.attribute[0]) && (filterItem[2] == '' || filterItem[2] == item.publisherAttribute[0]) && (filterItem[3] == '' || filterItem[3] == item.supply[0])}}"
+        item="{{item}}" bindfiltermsgtype="filterMsgType" />
+    </view>
+  </view>
 </view>