RegMs If пре 4 година
родитељ
комит
1a14655a9b

+ 1 - 1
cloudfunctions/createQuestion/index.js

@@ -30,7 +30,7 @@ exports.main = async (event, context) => {
         q_time: new Date(),
         answer: '',
         a_time: new Date(),
-        rank: 0
+        rank: 1
       }
     })
 

+ 6 - 2
miniprogram/app.wxss

@@ -39,8 +39,12 @@
   color: #FFFFFF !important;
 }
 
-.accent-background-color{
-  background:#FF4081
+.black-text-color {
+  color: #000000 !important;
+}
+
+.accent-background-color {
+  background: #FF4081;
 }
 
 page {

+ 1 - 1
miniprogram/components/itemMessageQuestion/itemMessageQuestion.wxml

@@ -1,6 +1,6 @@
 <view class="qa-text" style="display: flex;">
   <view class="primary-text-color" style="margin-right: 30rpx;">{{question.a_time}}</view>
-  <view class="secondary-text-color">{{question.rank ? '置顶' : ''}}</view>
+  <view class="secondary-text-color">{{question.rank === 1 ? '' : '置顶'}}</view>
 </view>
 <view class="qa-text">Q: {{question.question}}</view>
 <view class="qa-text">A: {{question.answer}}</view>

+ 6 - 5
miniprogram/components/myButton/myButton.js

@@ -10,8 +10,11 @@ Component({
    * 组件的属性列表
    */
   properties: {
+    size: String,
     type: String,
-    size: String
+    disabled: Boolean,
+    formType: String,
+    openType: String
   },
 
   lifetimes: {
@@ -21,7 +24,7 @@ Component({
           type: 'default'
         })
       }
-      if (this.data.size !== 'default' && this.data.type !== 'large') {
+      if (this.data.size !== 'default' && this.data.size !== 'large' && this.data.size !== 'mini') {
         this.setData({
           size: 'default'
         })
@@ -40,8 +43,6 @@ Component({
    * 组件的方法列表
    */
   methods: {
-    handleTap: function () {
-      this.triggerEvent('tap');
-    }
+
   }
 })

+ 3 - 2
miniprogram/components/myButton/myButton.wxml

@@ -1,6 +1,7 @@
 <!--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">
+  class="{{(size === 'large' ? 'my-large-button' : size === 'mini' ? 'my-mini-button' : 'my-button') + (disabled ? (type === 'primary' ? ' my-primary-disabled-button' : ' my-default-disabled-button') : (type === 'primary' ? ' primary-background-color white-text-color' : ' secondary-background-color black-text-color primary-border-color'))}}"
+  hover-class="{{type === 'primary' ? 'my-primary-hover-button' : 'my-default-hover-button'}}" size="{{size}}"
+  type="{{type}}" disabled="{{disabled}}" form-type="{{formType}}" open-type="{{openType}}">
   <slot></slot>
 </button>

+ 39 - 3
miniprogram/components/myButton/myButton.wxss

@@ -1,9 +1,45 @@
 /* components/myButton/myButton.wxss */
 .my-button {
-  font-size: 30rpx;
-  border-radius: 50rpx;
   width: 250rpx !important;
+  font-size: 30rpx !important;
   font-weight: normal !important;
+  border-radius: 40rpx !important;
 }
 
-.large-button {}
+.my-large-button {
+  display: flex;
+  justify-content: center;
+  align-items: center;
+  padding: 0rpx;
+  width: 200rpx !important;
+  height: 100rpx !important;
+  font-size: 30rpx !important;
+  border-radius: 20rpx !important;
+  font-weight: normal !important;
+}
+
+.my-mini-button {
+  font-size: 25rpx !important;
+  font-weight: normal !important;
+  border-radius: 20rpx !important;
+}
+
+.my-primary-disabled-button {
+  color: #DDEEEE !important;
+  background: #30B0B0 !important;
+}
+
+.my-default-disabled-button {
+  color: #909090 !important;
+  background: #DDDDDD !important;
+}
+
+.my-primary-hover-button {
+  color: #CCDDDD !important;
+  background: #008080 !important;
+}
+
+.my-default-hover-button {
+  color: #303030 !important;
+  background: #CCCCCC !important;
+}

+ 3 - 1
miniprogram/pages/aboutUs/aboutUs.json

@@ -1,3 +1,5 @@
 {
-  "usingComponents": {}
+  "usingComponents": {
+    "myButton": "/components/myButton/myButton"
+  }
 }

+ 6 - 13
miniprogram/pages/aboutUs/aboutUs.wxml

@@ -5,21 +5,14 @@
 
 <view wx:if="{{currentTab == 0}}" class="con">
   <view class="btn-row">
-    <view><button class="button  primary-background-color white-text-color" bindtap="switch1"
-        plain="true"><text>汇听\n建立初衷</text></button></view>
-    <view><button class="button  primary-background-color white-text-color" bindtap="switch2"
-        plain="true"><text>汇听\n游玩指引</text></button></view>
-    <view><button class="button  primary-background-color white-text-color" bindtap="switch3"
-        plain="true"><text>汇听\n更新目录</text></button></view>
+    <myButton type="primary" size="large" bindtap="switch1"><text>汇听\n建立初衷</text></myButton>
+    <myButton type="primary" size="large" bindtap="switch2"><text>汇听\n游玩指引</text></myButton>
+    <myButton type="primary" size="large" bindtap="switch3"><text>汇听\n更新目录</text></myButton>
   </view>
-
   <view class="btn-row">
-    <view><button class="button  primary-background-color white-text-color" bindtap="switch4"
-        plain="true"><text>联系我们</text></button></view>
-    <view><button class="button  primary-background-color white-text-color" bindtap="switch5"
-        plain="true"><text>商务合作</text></button></view>
-    <view><button class="button  primary-background-color white-text-color" bindtap="switch6"
-        plain="true"><text>开发人员</text></button></view>
+    <myButton type="primary" size="large" bindtap="switch4"><text>联系我们</text></myButton>
+    <myButton type="primary" size="large" bindtap="switch5"><text>商务合作</text></myButton>
+    <myButton type="primary" size="large" bindtap="switch6"><text>开发人员</text></myButton>
   </view>
 </view>
 

+ 7 - 14
miniprogram/pages/aboutUs/aboutUs.wxss

@@ -9,6 +9,10 @@
   font-size: 30rpx;
 }
 
+.detail-text {
+  text-indent: 2em;
+}
+
 .icon {
   height: 150rpx;
   width: 300rpx;
@@ -18,20 +22,9 @@
 
 .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;
+  justify-content: space-between;
+  margin-bottom: 15rpx;
+  width: 630rpx;
 }
 
 .sub-title {

+ 0 - 15
miniprogram/pages/main/main.js

@@ -143,7 +143,6 @@ Page({
       filterItem: this.data.filterItem
     })
     this.loadMessageData(true)
-    // this.updateData()
   },
 
   filterMsgType: function (e) {
@@ -152,7 +151,6 @@ Page({
       filterItem: this.data.filterItem
     })
     this.loadMessageData(true)
-    // this.updateData()
   },
 
   filterTag: function (e) {
@@ -161,20 +159,8 @@ Page({
       filterItem: this.data.filterItem
     })
     this.loadMessageData(true)
-    // this.updateData()
   },
 
-  // updateData: function () {
-  //   for (let i = 0; i < this.data.mainDatas.length; i++) {
-  //     this.data.mainDatas[i].show = (this.data.filterItem[1] === '' || this.data.mainDatas[i].type.indexOf(this.data.filterItem[1]) !== -1) &&
-  //       (this.data.filterItem[2] === '' || this.data.filterItem[2] === this.data.mainDatas[i].publisher.type) &&
-  //       (this.data.filterItem[3] === '' || this.data.mainDatas[i].tag.indexOf(this.data.filterItem[3]) !== -1)
-  //   }
-  //   this.setData({
-  //     mainDatas: this.data.mainDatas
-  //   })
-  // },
-
   loadMessageData: function (refresh) {
     this.setData({
       loading: true
@@ -205,7 +191,6 @@ Page({
         pageToken: res.result.next_page_token,
         loading: false
       })
-      // this.updateData()
     })
   },
 

+ 1 - 0
miniprogram/pages/main/main.wxss

@@ -85,6 +85,7 @@
 
 .message-view {
   margin-top: 80rpx;
+  margin-bottom: 20rpx;
   display: flex;
   flex-direction: column;
   align-items: center;

+ 3 - 3
miniprogram/pages/messagePublish/messagePublish.wxml

@@ -79,7 +79,7 @@
       <view class="cate primary-text-color" style="align-self: flex-start;">消息通知</view>
       <textarea class="input" style="height: 200rpx;" placeholder="提交后会以消息的形式通知关注者" name="notify"></textarea>
     </view>
-    <myButton class="button" type="primary">提交</myButton>
+    <myButton class="button" type="primary" form-type="submit">提交</myButton>
   </form>
 </scroll-view>
 
@@ -132,7 +132,7 @@
       <view class="cate primary-text-color" style="align-self: flex-start;">消息通知</view>
       <textarea class="input" style="height: 200rpx;" placeholder="提交后会以消息的形式通知关注者" name="notify"></textarea>
     </view>
-    <myButton class="button" type="primary">提交</myButton>
+    <myButton class="button" type="primary" form-type="submit">提交</myButton>
   </form>
 </scroll-view>
 
@@ -178,7 +178,7 @@
       <view class="cate primary-text-color" style="align-self: flex-start;">消息通知</view>
       <textarea class="input" style="height: 200rpx;" placeholder="提交后会以消息的形式通知关注者" name="notify"></textarea>
     </view>
-    <myButton class="button" type="primary">提交</myButton>
+    <myButton class="button" type="primary" form-type="submit">提交</myButton>
   </form>
 </scroll-view>
 

+ 3 - 3
miniprogram/pages/publisherLogin/publisherLogin.wxml

@@ -76,7 +76,7 @@
       <view class="cate">公众号</view>
       <input class="input" placeholder="请填写" name="wechat" />
     </view>
-    <myButton class="button" type="primary">提交</myButton>
+    <myButton class="button" type="primary" form-type="submit">提交</myButton>
   </form>
 </scroll-view>
 
@@ -123,7 +123,7 @@
       <view class="cate">公众号</view>
       <input class="input" placeholder="请填写" name="wechat" />
     </view>
-    <myButton class="button" type="primary">提交</myButton>
+    <myButton class="button" type="primary" form-type="submit">提交</myButton>
   </form>
 </scroll-view>
 
@@ -162,7 +162,7 @@
       <view class="cate">公众号</view>
       <input class="input" placeholder="请填写" name="wechat" />
     </view>
-    <myButton class="button" type="primary">提交</myButton>
+    <myButton class="button" type="primary" form-type="submit">提交</myButton>
   </form>
 </scroll-view>
 

+ 5 - 4
miniprogram/pages/publisherQuestion/publisherQuestion.js

@@ -26,14 +26,15 @@ Page({
   },
 
   togglePin: function (e) {
+    const currentRank = this.data.questions[e.currentTarget.dataset.index].rank
     wx.showLoading({
-      title: this.data.questions[e.currentTarget.dataset.index].rank ? '取消置顶' : '正在置顶'
+      title: currentRank === 1 ? '正在置顶' : '取消置顶'
     })
     wx.cloud.callFunction({
       name: 'updateQuestion',
       data: {
         que_id: this.data.questions[e.currentTarget.dataset.index]._id,
-        rank: !this.data.questions[e.currentTarget.dataset.index].rank
+        rank: currentRank === 1 ? 2 : 1
       }
     }).then(res => {
       wx.hideLoading()
@@ -45,10 +46,10 @@ Page({
         return
       }
       wx.showToast({
-        title: this.data.questions[e.currentTarget.dataset.index].rank ? '取消置顶成功' : '置顶成功',
+        title: currentRank === 1 ? '置顶成功' : '取消置顶成功',
         icon: 'none'
       })
-      this.data.questions[e.currentTarget.dataset.index].rank = !this.data.questions[e.currentTarget.dataset.index].rank
+      this.data.questions[e.currentTarget.dataset.index].rank = currentRank === 1 ? 2 : 1
       this.setData({
         questions: this.data.questions
       })

+ 3 - 1
miniprogram/pages/publisherQuestion/publisherQuestion.json

@@ -1,3 +1,5 @@
 {
-  "usingComponents": {}
+  "usingComponents": {
+    "myButton": "/components/myButton/myButton"
+  }
 }

+ 11 - 15
miniprogram/pages/publisherQuestion/publisherQuestion.wxml

@@ -1,12 +1,12 @@
 <!--为发布者-收到的提问页面-->
 <view wx:if="{{!questions.length}}" class="title primary-text-color" style="text-align: center;">这里空空如也</view>
 <checkbox-group wx:else class="checkbox-group" bindchange="updateFilter">
-  <view>
-    <checkbox class="checkbox" value="0" checked color="#009195">未回答</checkbox>
-  </view>
-  <view>
-    <checkbox class="checkbox" value="1" color="#009195">已回答</checkbox>
-  </view>
+  <!-- <view> -->
+  <checkbox class="checkbox" value="0" checked color="#009195">未回答</checkbox>
+  <!-- </view> -->
+  <!-- <view> -->
+  <checkbox class="checkbox" value="1" color="#009195">已回答</checkbox>
+  <!-- </view> -->
 </checkbox-group>
 
 <view wx:for="{{questions}}" wx:for-item="item" wx:for-index="index" wx:key="_id">
@@ -15,15 +15,11 @@
     <view class="question primary-text-color">问:{{item.question}}</view>
     <textarea class="answer block-background-color" value="{{item.answer}}" placeholder="填写回答" data-index="{{index}}"
       bindinput="updateText"></textarea>
-    <view class="btn">
-      <view wx:if="{{!item.saved}}" class="save-btn primary-background-color white-text-color" data-index="{{index}}"
-        bindtap="saveQuestion">保存</view>
-      <view wx:else class="save-btn third-background-color white-text-color">保存</view>
-      <view wx:if="{{!item.rank}}" class="top-btn primary-background-color white-text-color" data-index="{{index}}"
-        bindtap="togglePin">置顶提问</view>
-      <view wx:else class="top-btn third-background-color white-text-color" data-index="{{index}}" bindtap="togglePin">
-        取消置顶
-      </view>
+    <view class="btn-group">
+      <myButton style="margin-right: 10rpx;" type="primary" size="mini" disabled="{{item.saved}}" data-index="{{index}}"
+        bindtap="saveQuestion">保存</myButton>
+      <myButton type="{{item.rank === 1 ? 'primary' : 'default'}}" size="mini" data-index="{{index}}"
+        bindtap="togglePin">{{item.rank === 1 ? '置顶提问' : '取消置顶'}}</myButton>
     </view>
     <icon style="position: absolute; top: 20rpx; right: 20rpx;" type="cancel" size="20" data-index="{{index}}"
       catchtap="removeQuestion"></icon>

+ 3 - 15
miniprogram/pages/publisherQuestion/publisherQuestion.wxss

@@ -44,21 +44,9 @@
   background-color: #EDEDED;
 }
 
-.save-btn {
-  padding: 10rpx 20rpx;
-  border-radius: 20rpx;
-  font-size: 35rpx;
-  margin-right: 20rpx;
-}
-
-.top-btn {
-  padding: 10rpx 20rpx;
-  border-radius: 20rpx;
-  font-size: 35rpx;
-}
-
-.btn {
+.btn-group {
   display: flex;
   justify-content: center;
-  margin-bottom: 20rpx;
+  align-items: center;
+  margin: 10rpx;
 }

+ 3 - 1
miniprogram/pages/user/user.json

@@ -1,3 +1,5 @@
 {
-  "usingComponents": {}
+  "usingComponents": {
+    "myButton": "/components/myButton/myButton"
+  }
 }

+ 12 - 19
miniprogram/pages/user/user.wxml

@@ -1,33 +1,28 @@
 <!--为使用者-我的页面-->
-<view class="card">
-  <image class="avatar" src="{{hasUserInfo ? userInfo.avatar : '/images/user/user.png'}}" bindtap="previewAvatar">
+<view class="user-card">
+  <image class="user-avatar" src="{{hasUserInfo ? userInfo.avatar : '/images/user/user.png'}}" bindtap="previewAvatar">
   </image>
-  <view wx:if="{{hasUserInfo}}" class="nickname primary-text">{{userInfo.name}}</view>
-  <view wx:else class="nickname"><button class="block-background-color" size="mini"
-      bindtap="getUserProfile">微信登录</button></view>
+  <view wx:if="{{hasUserInfo}}" class="user-nickname primary-text">{{userInfo.name}}</view>
+  <view wx:else class="user-nickname">
+    <myButton type="primary" bindtap="getUserProfile">微信登录</myButton>
+  </view>
   <view wx:if="{{hasUserInfo}}">
-    <view wx:if="{{pubInfo.length === 0}}" class="pub-name secondary-text">尚未加入任何社团组织</view>
-    <view wx:else class="pub-name secondary-text">
-      <view wx:for="{{pubInfo}}" wx:for-item="item" wx:key="pub_id">{{item.publisher.name}}</view>
-    </view>
+    <view wx:if="{{!pubInfo.length}}" class="pub-name secondary-text">尚未加入任何社团组织</view>
+    <view class="pub-name secondary-text" wx:for="{{pubInfo}}" wx:for-item="item" wx:key="pub_id">
+      {{item.publisher.name}}</view>
   </view>
 </view>
 
 <view class="mid" wx:if="{{hasUserInfo}}">
-
-  <view class="btn" hover-class="btn-hover" bindtap="myFavor">
+  <view class="btn" bindtap="myFavorite">
     <image class="btn-icon" mode="aspectFit" src="/images/user/like.png"></image>
     <view class="btn-text primary-text">我的收藏</view>
   </view>
-
-
-  <view class="btn" hover-class="btn-hover" bindtap="myFollow">
+  <view class="btn" bindtap="myFollow">
     <image class="btn-icon" mode="aspectFit" src="/images/user/follow.png"></image>
     <view class="btn-text primary-text">我的关注</view>
   </view>
-
-
-  <view class="btn" hover-class="btn-hover" bindtap="myQuestion">
+  <view class="btn" bindtap="myQuestion">
     <image class="btn-icon" mode="aspectFit" src="/images/user/question.png"></image>
     <view class="btn-text primary-text">我的提问</view>
   </view>
@@ -37,12 +32,10 @@
       <image class="btn-icon" mode="aspectFit" src="/images/user/setting.png"></image>
       <view>设置</view>
     </view>
-
     <view class="btn" bindtap="aboutUs">
       <image class="btn-icon" mode="aspectFit" src="/images/user/about.png"></image>
       <view>关于</view>
     </view>
-
     <button class="btn" open-type="feedback">
       <image class="btn-icon" mode="aspectFit" src="/images/user/feedback.png"></image>
       <view>反馈</view>

+ 3 - 3
miniprogram/pages/user/user.wxss

@@ -1,19 +1,19 @@
 /* components/user/user.wxss */
-.card {
+.user-card {
   display: flex;
   flex-direction: column;
   align-items: center;
   margin-top: 150rpx;
 }
 
-.avatar {
+.user-avatar {
   height: 200rpx;
   width: 200rpx;
   border-radius: 100%;
   margin-bottom: 20rpx;
 }
 
-.nickname {
+.user-nickname {
   font-size: 40rpx;
   margin-bottom: 10rpx;
 }