如何解決微信小程序兼容性問題

責任編輯:福建福彩快3开奖结果 //www.yhrpv.com/



 在福建福彩快3开奖结果的開發中,我們經?;嵊齙揭恍┘嬡菪暈侍?。例如,在將時間字符串轉換為時間戳的方法中,我使用Date.parsenew Date方法,但在WeChat開發人員工具中。 

方法正常實現,但在某些iPhone設備和某些Android設備中,相關功能未實現。為了解決這個問題,我只能導入momentjs,而不是調用系統方法。 

這里我們將討論一些兼容性問題。  

如何解決福建福彩快3开奖结果兼容性問題  

運行環境差異 ## #The WeChat小程序在三端運行:用于調試的iOS,Android和開發人員工具。  

三端腳本執行環境和用于呈現非本機組件的環境是不同的:   

在iOS上,applet的javascript代碼在JavaScriptCore中運行,由WKWebView呈現?;肪秤衖OS8或更高版本。 

在Android上,applet的applet代碼由X5 JSCore解析,并由X5基于Mobile Chrome 53/57內核呈現。 

 On在開發工具中,applet的applet代碼在nwjs中運行并由Chrome Webview呈現。 

雖然三端環境非常相似,但仍存在一些差異:

 ES6語法支持不一致語法開發人員可以通過打開ES6來繞過ES5。  

 Wxss呈現不一致雖然你可以通過打開樣式完成來避免大多數問題,但它建議開發人員分別在iOS和Android上檢查applet的實際性能。  

 ES6到ES5  

在0.10.101000和更高版本的開發工具中,使用了babel默認情況下,將開發人員ES6語法代碼轉換為三方支持的ES5代碼,幫助開發人員解決由不同環境引起的開發問題。  

樣式完備on  

啟用此選項后,開發工具將自動檢測并完成缺少的樣式,以確保在較低版本系統上正確顯示。 

雖然你可以規避大部分問題,但建議開發人員檢查iOS和Android上applet的實際性能。  

 compatible  

功能applet繼續增加,但舊版本的微信客戶端不支持新功能,因此在使用這些新功能時需要兼容性。  

文檔將附帶支持的版本號頁面描述中的每個函數,例如組件和API。  

可以傳遞給wx.getSystem 

Info或wx.getSystemInfoSync獲取applet的基本庫版本號。  

您可以使用wx.canIUse來確定是否可以直接在基本庫版本下使用相應的API或組件。   

獲取系統信息 

同步

let res = wx.getSystemInfoSync()

console.log("同步獲取系統信息:" + res);

console.log(res);

異步:


 

wx.getSystemInfo({

success: function(res) {

console.log("異步獲取系統信息:");

console.log(res);

},

})

版本比較

微信客戶端和小程序基礎庫的版本號風格為 Major.Minor.Patch(主版本號.次版本號.修訂號)。 開發者可以根據版本號去做兼容


 

function compareVersion(v1, v2) {

v1 = v1.split('.')

v2 = v2.split('.')

var len = Math.max(v1.length, v2.length)

 

while (v1.length < len) {

v1.push('0')

}

while (v2.length < len) {

v2.push('0')

}

 

for (var i = 0; i < len; i++) {

var num1 = parseInt(v1[i])

var num2 = parseInt(v2[i])

 

if (num1 > num2) {

return 1

} else if (num1 < num2) {

return -1

}

}

 

return 0

}

 

compareVersion('1.11.0', '1.9.9')

// 1

該基礎庫版本下直接使用對應的API或者組件的API


wx.canIUse(String)判斷小程序的API,回調,參數,組件等是否在當前版本可用。此接口從基礎庫 1.1.1 版本開始支持。


String參數說明: 使用{API}.{method}.{param}.{options}或者{component}.{attribute}.{option}方式來調用,例如:


{API} 代表 API 名字  {method} 代表調用方式,有效值為return, success, object, callback  {param} 代表參數或者返回值  {options} 代表參數的可選值  {component} 代表組件名字  {attribute} 代表組件屬性  {option} 代表組件屬性的可選值


例子:


 

wx.canIUse('openBluetoothAdapter')

wx.canIUse('getSystemInfoSync.return.screenWidth')

wx.canIUse('getSystemInfo.success.screenWidth')

wx.canIUse('showToast.object.image')

wx.canIUse('onCompassChange.callback.direction')

wx.canIUse('request.object.method.GET')

 

wx.canIUse('live-player')

wx.canIUse('text.selectable')

wx.canIUse('button.open-type.contact')

 

Javascript標準庫兼容性問題 

除了微信漏洞之外,大多數微信小程序都是由目標平臺到JavaScript標準庫的不同支持級別引起的。 

我在頂部遇到的問題是Javascript標準庫兼容性問題。 

對于這類問題我們可以修補,從其他地方找到更完整的js代碼,然后我們將它復制到我們的項目中。  

以上是關于如何使用的文章解決福建福彩快3开奖结果兼容性問題。如果您想了解更多關于福建福彩快3开奖结果的信息,請關注網站,謝謝。




澤群一站式網絡服務機構竭誠為您提供:

福建福彩快3开奖结果,福建福彩快3开奖结果,福建福彩快3开奖结果,福建福彩快3开奖结果,福建福彩快3开奖结果,福建福彩快3开奖结果,福建福彩快3开奖结果,福建福彩快3开奖结果,SEO優化,模板建站,云服務等服務

相關資訊