微信小程序自定義導航欄(wx_custom_navigation_bar) 自定義返回鍵、首頁鍵,動態設置標題,響應式組件


微信小程序自定義導航欄 navigation bar 返回鍵 首頁

github: https://github.com/chen-yt/wx_custom_navigation_bar

 

https://github.com/Superman2113/wx_custom_navigation_bar

 

 

 

 

 

代碼

navbar組件

  • navbar.wxml
<view class="navbar" style="{{'height: ' + navigationBarHeight}}">
  <view style="{{'height: ' + statusBarHeight}}"></view>
  <view class='title-container'>
    <view class='capsule' wx:if="{{ back || home }}">
      <view bindtap='back' wx:if="{{back}}">
        <image src='img/back.svg'></image>            
      </view>
      <view bindtap='backHome' wx:if="{{home}}">
        <image src='img/home.svg'></image>
      </view>
    </view>
    <view class='title'>{{text}}</view>
  </view>
</view>
  • navbar.wxss
.navbar {
  width: 100vw;
  background-color: #2f2f2f;
  position: fixed;
  z-index: 4;
}

.title-container {
  height: 44px;
  display: flex;
  align-items: center;
  position: relative;
}

.capsule {
  margin-left: 10px;
  height: 32px;
  border: 1px solid #777;
  border-radius: 16px;
  display: flex;
  align-items: center;
}

.capsule > view {
  width: 32px;
  height: 60%;
  position: relative;
}

.capsule > view:nth-child(2) {
  border-left: 1px solid #777;  
}

.capsule image {
  width: 60%;
  height: 100%;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%,-50%);
}

.title {
  color: white;
  position: absolute;
  left: 104px;
  right: 104px;
  font-size: 14px;
  text-align: center;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
  • navbar.js
const app = getApp()

Component({

  properties: {
    text: {
      type: String,
      value: 'Wechat'
    },
    back: {
      type: Boolean,
      value: false
    },
    home: {
      type: Boolean,
      value: false
    }
  },

  data: {
    statusBarHeight: app.statusBarHeight + 'px',
    navigationBarHeight: (app.statusBarHeight + 44) + 'px'
  },

  methods: {
    backHome: function () {
      wx.reLaunch({
        url: '../index/index',
      })
    },
    back: function () {
      wx.navigateBack({
        delta: 1
      })
    }
  }
})
  • navbar.json
{
  "component": true
}



版權聲明:本文為CSDN博主「ITO濤濤」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/Chen_ITO/article/details/83651917


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM