小程序開發(fā)遇到的問題(小程序開發(fā)常見問題)
今天給各位分享小程序開發(fā)遇到的問題的知識,其中也會(huì)對小程序開發(fā)常見問題進(jìn)行解釋,如果能碰巧解決你現(xiàn)在面臨的問題,別忘了關(guān)注本站,現(xiàn)在開始吧!
本文目錄一覽:
小程序開發(fā)的難點(diǎn)是什么?
小程序開發(fā)的難點(diǎn)有:如何通過技術(shù)手段提升開發(fā)效率以應(yīng)對不斷增長的業(yè)務(wù)需求?微信小程序的工程化探索有哪些最新進(jìn)展?如何實(shí)現(xiàn)小程序自動(dòng)化構(gòu)建、自動(dòng)化測試?
如何將小程序開發(fā)與團(tuán)隊(duì)現(xiàn)有的技術(shù)棧有機(jī)結(jié)合?如何適配 H5、React Native微信小程序等多端需求?如何擴(kuò)展小程序的能力、滿足產(chǎn)品設(shè)計(jì)上的復(fù)雜需求?如何突破小程序包大小的限制?
如何解決頁面層級限制問題?在遇到長列表場景時(shí),小程序渲染性能會(huì)出現(xiàn)瓶頸,如何進(jìn)行性能優(yōu)化?由于微信小程序中缺少對 DOM 的控制,該如何滿足復(fù)雜交互需求?【點(diǎn)擊查看小程序開發(fā)底價(jià)】
想要了解更多有關(guān)小程序開發(fā)的相關(guān)信息,推薦咨詢豬八戒網(wǎng)。豬八戒網(wǎng)成立于2006年,是中國領(lǐng)先的企業(yè)服務(wù)平臺,服務(wù)交易獨(dú)角獸企業(yè)。豬八戒網(wǎng)現(xiàn)有注冊用戶2800萬、在全國布局線下數(shù)字化創(chuàng)業(yè)園區(qū)超過100個(gè)。十余年來,累計(jì)有10萬余個(gè)人通過平臺孵化成長為公司,超過100萬人通過平臺實(shí)現(xiàn)靈活就業(yè),千萬企業(yè)通過平臺解決專業(yè)服務(wù)需求;專業(yè)性值得選擇。
小程序開發(fā)經(jīng)驗(yàn)總結(jié)
最近一直在做小程序,工作中也遇到了一些問題,踩了一些坑,所以想著寫篇文章記錄下來,并借此將小程序開發(fā)的相關(guān)知識進(jìn)行梳理,方便以后參考,也為剛剛接觸小程序的人提供一些思路方法,互相學(xué)習(xí),共同進(jìn)步。
1、微信小程序的目錄結(jié)構(gòu)及配置說明
app.json是小程序的全局配置文件,所有配置項(xiàng)key必須使用 雙引號括起來 ,value值為字符串類型的也必須使用雙引號, 不支持單引號 。
1.1 pages
pages選項(xiàng)是必須配置的。該配置項(xiàng)注冊了小程序所有頁面的地址,其中每一項(xiàng)都是頁面的 路徑+文件名 。每一個(gè)頁面都是由.json、.js、.wxml、.wxss四個(gè)文件組成,并且 四個(gè)文件的名字必須要一致 。
1.2 ? tabBar
tabBar 配置項(xiàng)指定 tab 欄的表現(xiàn),以及 tab 切換時(shí)顯示的對應(yīng)頁面。其中 list 接受一個(gè)數(shù)組,只能配置最少 2 個(gè)、最多 5 個(gè) tab
1.3?usingComponents
使用自定義組件或者插件提供的組件前,必須先在這里聲明
2、開發(fā)微信小程序遇到的問題及解決辦法
2.1 雙向綁定
微信小程序不支持通過v-model的方式實(shí)現(xiàn)自動(dòng)雙向綁定,需要給表單元素通過綁定事件,并使用this.setData來賦值實(shí)現(xiàn)。
2.2 computed和watch
微信小程序默認(rèn)是不支持computed和watch的,如需要使用這兩項(xiàng)功能,需要安裝miniprogram-computed ,安裝方法見 官方文檔
2.3 對象賦值
如果給對象的屬性賦值,可以使用this.setData({'obj.key':value})來賦值,但是如果給某個(gè)屬性名是變量的屬性賦值,通過這種方法是會(huì)報(bào)錯(cuò)的,經(jīng)過多次嘗試,發(fā)現(xiàn)使用如下的方式賦值成功。
let newObj = `obj.${key}`
this.setData({
[newObj]: value
})
2.4 scroll-view
當(dāng)頁面存在彈框容器,并且彈框里的內(nèi)容是需要滾動(dòng)條滾動(dòng)展示時(shí),如果彈框下面那層的容器使用view元素的話,會(huì)導(dǎo)致滾動(dòng)彈框內(nèi)容時(shí),同時(shí)會(huì)觸發(fā)彈框下面那層的頁面容器也會(huì)一起滾動(dòng),解決此問題可以將彈框下面的容器使用scroll-view元素替代view元素
3、小程序測試和發(fā)布
由于服務(wù)器域名request合法域名每個(gè)月 只能修改5次 ,因此在本地開發(fā)小程序時(shí),需要在微信調(diào)試工具中設(shè)置不校驗(yàn)合法域名。等小程序上線前再一次性將所有域名添加到小程序管理后臺。
以上便是此次小程序開發(fā)中積累的一些經(jīng)驗(yàn),希望能給剛剛接觸小程序的人提供一些思路方法,在以后的開發(fā)中,如果遇到新的問題,繼續(xù)更新文檔......
微信小程序開發(fā)中遇到的坑及解決辦法
taro單獨(dú)為某個(gè)項(xiàng)目切換taro版本環(huán)境
單獨(dú)為某一個(gè)項(xiàng)目升級#這樣做的好處是全局的 Taro 版本還是 1.x 的,多個(gè)項(xiàng)目間的依賴不沖突,其余項(xiàng)目依然可以用舊版本開發(fā)。 如果你的項(xiàng)目里沒有安裝 Taro CLI,你需要先裝一個(gè):
# 如果你使用 NPM
$ npm install --save-dev @tarojs/cli@2.x
# 如果你使用 Yarn
$ yarn add -D @tarojs/cli@2.x
echarts在小程序中滑動(dòng)卡頓
由于微信小程序中,echarts的層級最高,無論設(shè)置多大層級也無法遮住echarts。而且小程序中好像只能用echarts吧。所以為了解決這個(gè)bug,我只能委屈求全了。打開ec-canvas.wxml文件,將touchStart、touchMove和touchEnd去掉了,直接刪除就好啦。這三個(gè)事件應(yīng)該是做縮放的吧,我們也沒有這個(gè)縮放的需求。所以就去掉了。雖然暫時(shí)滿足的需求,還是沒有真正的解決問題。
原:
bindinit="init"
bindtouchstart="{{ ec.disableTouch ? '' : 'touchStart' }}"
bindtouchmove="{{ ec.disableTouch ? '' : 'touchMove' }}"
bindtouchend="{{ ec.disableTouch ? '' : 'touchEnd' }}"
現(xiàn):
bindinit="init"
echarts在小程序中無法跟隨頁面滑動(dòng)
在卡頓問題中能與echarts交互少的,可以直接使用圖片代替cannvas,即在echarts渲染完畢后將它替換為一張圖片。
如果我更新了數(shù)據(jù),那么就重新放出echarts,等它渲染完畢后,再次替換為一張圖片。
chart.on('finished', () = {
getCurrentInstance().page.selectComponent(id).canvasToTempFilePath({
success: res = {
console.log('res.tempFilePath====',res.tempFilePath)
this.setState({
echartImgSrc: res.tempFilePath
? ? ? })
},
? ? fail: res =console.log('轉(zhuǎn)換圖片失敗', res)
});
})
render:
this.state.echartImgSrc =='' ?
? ref={this.refChart}
id={this.state.id}
canvas-id="mychart-area"
? force-use-old-canvas="true"
? ec={this.state.ec}
/
:
CoverImage src={this.state.echartImgSrc}/CoverImage
小程序開發(fā)遇到的問題的介紹就聊到這里吧,感謝你花時(shí)間閱讀本站內(nèi)容,更多關(guān)于小程序開發(fā)常見問題、小程序開發(fā)遇到的問題的信息別忘了在本站進(jìn)行查找喔。