『壹』 小程序的優勢和劣勢是什麼
小程序是一種不用下載就能使用的應用,也是一項門檻非常高的創新,經過將近兩年的發展,已經構造了新的小程序開發環境和開發者生態。小程序越來越火爆,那麼小程序的優勢在哪裡?
小程序優點:
1、方便快捷,即用即走。
不需要再下載什麼APP啦,既費流量,又占空間內存。小程序就是方便,即用即走。
2、速度快、不佔內存
因為小程序前端代碼都是存在微信伺服器上的,在騰訊雲端存放呢,所以無需載入,直接就打開了,速度也比較快。並且還不佔用手機內存。
3、安全穩定、保密性強
其實小程序就類似蘋果商店,首先需要審核才能發布。其次小程序通信採用的是https訪問,SSL加密通信,並且小程序樣式代碼都封裝在微信小程序裡面,所以安全性更高,更穩定。
4、功能豐富,場景豐富
可以調用比H5更多的手機系統功能來進行開發,例如GPS定位、錄音、拍視頻、重力感應等,能開發更豐富的使用場景。
5、開發成本低、維護簡便
同樣的功能,做一個APP估計需要十幾萬甚至幾十萬,而開發一個小程序,一般幾千元就搞定了。維護起來也比較簡單方便。
6、附近定位、入口眾多
開放的入口比較多,除了通過掃碼,發送朋友,搜索,附近等常用入口外,還能與公眾號關聯,群發文章嵌入,公眾號菜單鏈接等。
說了這么多優點,那麼小程序缺點有哪些呢?
1、微信小程序只有1M的大小,這樣導致無法開發大型一些的小程序。所以目前你會看到很多小程序真的很小很簡單。
2、小程序的技術框架還不穩定,開發方法時常有修改,導致短時間內經常要升級維護,或許這能解析為什麼小程序只能1M大小,怕部署太大型的項目會出大問題。
3、不能直接分享到朋友圈,哎呀,少了一個重要的推廣方式。
4、需要像APP一樣審核上架,這點比HTML5即做即發布要麻煩些。
『貳』 微信小程序開發存在哪些問題,如何解決
1、域名必須是HTTPS
非HTTPS的域名不被微信小程序允許。
2、input組件placeholder字體顏色
寫在-class裡面的color並不生效,需要寫在placeholder-style裡面就可以了。
3、wx.navigateTo無法跳轉到帶tabbar的頁面
帶有tabbar的頁面,必須使用wx.switchTab進行跳轉。
4、tabbar在切換時頁面數據無法刷新
tabbar的實現可能是顯示和隱藏view,所以,不會一直調用page.onLoad()方法,可以嘗試把代碼邏輯寫在page.onShow()裡面。
5、如何獲取shareTickets
獲取shareTickets需要在app.onLaunch或者app.onShow裡面才能獲取到,而不是page.onShow,請一定要注意。
註:建議在app.onShow裡面去獲取,app.onLaunch不是一直會執行。
6、getPhoneNumber獲取手機號
目前該介面針對非個人開發者,且完成了認證的小程序開放。個人開發者是沒辦法調用這個API的。
7、wx.previewImage圖片預覽
預覽的圖片URL必須是HTTPS開頭,不能是本地圖片。
8、wx.playVoice音頻播放
必須保證音頻文件已經在本地,比如在wx.startRecord後,可以獲取到filePath。或者提前調用wx.downloadFile來下載資源文件,然後再播放。
9、API老版本兼容
可以用wx.canIUse或者wx.getSystemInfoSync來進行判斷,老版本給出相應提示即可。
10、獲取系統信息
wx.getSystemInfo,可得到系統語言、屏幕寬高、微信版本號、操作系統、設備像素比、客戶端甚礎庫版本等信息。
11、如何去掉自定義button灰色的圓角邊框
主要是button的偽元素設置了樣式,去掉即可: button::after{ display: none;}。
12、回到頁面頂部
回到頁面頂部,有兩種方式:
A、使用scroll-view設置為縱向滾動,然後設置scroll-top值;
B、使用wx.pageScrollTo方法,此方法是1.4.0開始支持,所以要做低版本兼容;
13、input textarea是APP的原生組件,z-index層級最高
有做過搜索框的同學,可能會遇到IOS下面,設置icon的z-index後,依然無法顯示。建議做顯示隱藏效果:點擊之前是一個view,點擊之後隱藏view,顯示input~。
14、小程序如何冷啟動
小程序的機制,是在退出五分鍾內進入,就會顯示的是退出前的頁面,如果你希望進入小程序都相當於冷啟動的方式,直接進入主頁面。你可以在page的onUnload裡面裡面set一個值,然後在app的onShow的時候判斷這個值,然後決定是否跳到首頁~
15、一段文字如何換行
小程序中唯一可以實現換行的標簽組件是text。
註:text中不支持<br>,只能使用\n進行換行。
16、設置最外層標簽的margin-bottom在IOS下不生效
margin-bottom在安卓和開發工具裡面都正常,就是在IOS下不起效,建議改成padding-bottom。
17、小程序中canvas的圖片不支持base64格式
base64格式圖片,在開發工具裡面可以正常顯示,真機上沒有顯示。建議修改成帶https開頭的url形式。
二,可以直接在第三方平台上面開發小程序