ios Android H5 方法相容
- 在h5和Android中判斷是否為空是 == === 都可以進行判斷,但是ios無法正確進行判斷,空字串判斷會返回false
/**
* 判斷是否為空
* @param v:需要判斷的資料
* @returns {boolean}
*/
export function isEmpty(v) {
switch (typeof v) {
case 'undefined':
return true;
case 'string':
if (v.replace(/(^[ \t\n\r]*)|([ \t\n\r]*$)/g, '').length === 0 || v.length === 0 || v == 'null') return true;
break;
case 'boolean':
if (!v) return true;
break;
case 'number':
if (0 === v || isNaN(v)) return true;
break;
case 'object':
if (null === v || v.length === 0) return true;
for (var i in v) {
return false;
}
return true;
}
return false;
}
字串需要先替換空格換行符等為'',再進行length判斷,
或者是從介面獲取資料,替換預設值時,可以由後端進行處理
複製程式碼
-
呼叫SDK傳參時,如果拿到請求資料進行回傳,ios和android引數回傳給對方之後,資料可能會被進行處理,造成SDK方法ios或android無法調起,或調起效果去要求不符的情況,確認引數回傳正確後,由對方進行資料處理
-
h5中location.search可以獲取到url 問號(?)之後的引數,但是因為vue的#問題,或造成無法獲取到的情況
呼叫SDK方法
- 呼叫SDK,方法無效或者有呼叫反應卻沒有出現相應結果,android可能需要安裝新包,ios可能是傳參格式有問題,ios需要聯絡相應開發人員處理
- 在android除錯,alert可以彈出資訊,ios中alert無效,可以使用toast彈出進行除錯