淺析怎樣制作微信小(xiǎo)程序

2019-06-11

微信小(xiǎo)程序自定義底部導航實現方法;
前面最簡單的底部導航有很多情況下(xià)不能使用,比如:想要使用svg和字體(tǐ)圖标 ,比如想要的底部菜單欄個數多于5個(一(yī)般情況下(xià)小(xiǎo)于等于5個 ,我(wǒ)說的是有兩個端入口的情況,比如教師端和學生(shēng)端)

miniapp.png自定義導航有兩種方式:将導航作爲組件 和 将頁面作爲組件

(1)将導航作爲組件

缺點 :會導緻頁面第一(yī)次進入的時候切換會導緻有頁面閃爍,這個閃爍其實就是url跳轉。
這裏代碼就不放(fàng)了,因爲這個缺點實在是我(wǒ)無法容忍的,大(dà)家有需要的話(huà),可以去(qù)查“自定義tabBar”,總會找到的。
(2)将頁面作爲組件
大(dà)緻原理就是在主頁面上寫底部菜單代碼,通過綁定這些菜單按鈕來更改當前頁面
主頁面代碼如下(xià)index.wxml


小(xiǎo)程序tabBar右上角加标志(zhì)加數字提醒方法;
顯示數字或文字

wx.setTabBarBadge({

 index: 4,

 text: ‘new’, //可改

});

移除文字

wx.removeTabBarBadge({

 index: 4,

});

//加紅點

wx.showTabBarRedDot({

index: 4,

});

移除紅點

wx.hideTabBarRedDot({

index: 4,

});


小(xiǎo)程序TabBar欄的顯示和隐藏方法;

有的時候我(wǒ)們可能需要将底部的TabBar隐藏起來,比如彈出分(fēn)享彈出框得時候就可設置隐藏。
十分(fēn)簡單,參考以下(xià):
// 顯示
wx.showTabBar({})

// 隐藏
wx.hideTabBar({})
每個API都有動畫animation屬性,運行動畫時會留出黑塊,非常醜,選擇性使用
以下(xià)是小(xiǎo)程序對應的文檔:
https://developers.weixin.qq.com/miniprogram/dev/framework/

bug:目前親測發現安卓手機在顯示和隐藏tab時頁面會出現晃動的情況


微信小(xiǎo)程序進行加減法運算的小(xiǎo)技巧;

Page({
data: {
lastpasslevel:6,
},
togame: function () {
var nowlevel = this.data.lastpasslevel-1+2;//這裏是一(yī)個很有趣的加法運算,本來想獲取到當前關卡隻需要将lastpasslevel加1即可,可字符串直接加就成了連接,但是先減1再加2就能進行運算。可能微信小(xiǎo)程序内部封裝了自動轉換的方法把。
wx.navigateTo({
url: ‘../arscan/arscan?cpId=’ + this.data.cpId + ‘&nowlevel=’ + nowlevel
})
}
})

微信小(xiǎo)程序中(zhōng)目前不清楚它的運算邏輯是怎樣的,本來直接對某個定義的數值進行加1運算,卻變成了字符串拼接,後來試了先減一(yī)再加二,就變成了加1運算。


微信小(xiǎo)程序圖片、組建透明度設置方法;

    div
    {
        opacity:0.5;
    }
    //圖片透明度
    <image style="opacity:0.5" src="1.png"></image>
    // opacity :規定不透明度。從 0.0 (完全透明)到 1.0(完全不透明)

有兩種解決方案,

  1.重寫tabBar, (自定義)       這個方法相對太麻煩了,對于新手來說不太容易控制

  2. 設計圖标樣式規範,  (所切的png圖片,給它裏面留下(xià)相應尺寸的空白(bái)) 看下(xià)圖

 
小(xiǎo)程序tabBar圖标顯示太大(dà)解決方法,

  1.重寫tabBar, (自定義)       這個方法相對太麻煩了,對于新手來說不太容易控制

  2. 設計圖标樣式規範,  (所切的png圖片,給它裏面留下(xià)相應尺寸的空白(bái)) 看下(xià)圖

  下(xià)載此圖片查看,

      png格式的圖片, 在切圖時,不要緊貼圖像切,  流出相應比例的空白(bái);


微信小(xiǎo)程實現序點擊分(fēn)享功能方法;

[html部分(fēn)]

<view class="usermotto carDesc carDesc1">
<!-- <button class="user-motto share">{{motto}}</button> -->
<button class='share user-motto' id="shareBtn" open-type="share" hover-class="other-button-hover">
{{motto}}
</button>
</view>


[js部分(fēn)]

pages({

   
data: {
tempFilePaths: '',
motto: '分(fēn)享給朋友',
userInfo: {},
hasUserInfo: false,
canIUse: wx.canIUse('button.open-type.getUserInfo')
},
//分(fēn)享按鈕函數
onShareAppMessage: function (ops) {
if (ops.from === 'button') {
// 來自頁面内轉發按鈕
console.log(ops.target)
}
return {
title: 'XXX小(xiǎo)程序',
path: 'pages/index/index',
success: function (res) {
// 轉發成功
console.log("轉發成功:" + JSON.stringify(res));
},
fail: function (res) {
// 轉發失敗
console.log("轉發失敗:" + JSON.stringify(res));
}
}

},

})

 

責任編輯:中(zhōng)山網站建設
 【網訊網絡】國家高新技術企業》十年專注軟件開(kāi)發,網站建設,網頁設計,APP開(kāi)發,小(xiǎo)程序,微信公衆号開(kāi)發,定制各類企業管理軟件(OA、CRM、ERP、訂單管理系統、進銷存管理軟件等)!服務熱線:0760-88610046、13924923903,http://www.wansion.net

您的項目需求咨詢熱線:0760-88610046(國家高新技術企業)

*請認真填寫需求,我(wǒ)們會在24小(xiǎo)時内與您取得聯系。