兼容性問題
具名插槽,在微信中無法顯示問題
image.png
不管是單個還是多個只要使用了具名插槽微信都無法顯示,支付寶就沒問題
在組件中開啟
import { createComponent } from '@mpxjs/core'
createComponent({
options: {
multipleSlots: true
},
)}
switch問題
1岖瑰、在支付寶中修改checked無效果問題叛买,因為支付寶中默認是非受控
image.png
添加controlled屬性
<switch controlled="{{true}}" checked="{{checked}}" bindchange="bindchange" color="#007FFF" />
2砂代、switch的change 事件問題蹋订,取值方式不同,百度使用e.detail.checked
change(e: any) {
let checked = e.detail.value
if (__mpx_mode__ === 'swan') {
checked = e.detail.checked
}
}
樣式隔離問題
支付寶是頁面級樣式隔離刻伊,微信和百度實則使用組件樣式隔離
頁面級隔離
缺點:同一個頁面中引用多個組件露戒,如果組件樣式命名相同就會導(dǎo)致不可預(yù)測的bug
優(yōu)點:樣式復(fù)用,提高開發(fā)效率
組件級隔離解決了頁面級隔離的缺點但樣式復(fù)用率也降低了捶箱,不過微信提供了為組件開啟全局樣式共享的方法
mpx.createComponent({
options: {
// styleIsolation: "apply-shared",
addGlobalClass: true,
}
)}
具體參數(shù)參考微信組件樣式隔離文檔
addGlobalClass
開啟后百度也可以樣式共享智什,styleIsolation
百度則沒有共享樣式效果,所以推薦使用 addGlobalClass