提交 aa10af98 编写于 作者: Q qiang

build runtime

上级 61b0d313
...@@ -1314,7 +1314,8 @@ function parseBaseComponent (vueComponentOptions, { ...@@ -1314,7 +1314,8 @@ function parseBaseComponent (vueComponentOptions, {
const options = { const options = {
multipleSlots: true, multipleSlots: true,
addGlobalClass: true addGlobalClass: true,
...(vueOptions.options || {})
}; };
const componentOptions = { const componentOptions = {
......
...@@ -442,19 +442,32 @@ const protocols = { // 需要做转换的 API 列表 ...@@ -442,19 +442,32 @@ const protocols = { // 需要做转换的 API 列表
if (!fromArgs.header) { // 默认增加 header 参数,方便格式化 content-type if (!fromArgs.header) { // 默认增加 header 参数,方便格式化 content-type
fromArgs.header = {}; fromArgs.header = {};
} }
const headers = {
'content-type': 'application/json'
};
Object.keys(fromArgs.header).forEach(key => {
headers[key.toLocaleLowerCase()] = fromArgs.header[key];
});
return { return {
header (header = {}, toArgs) { header (header = {}, toArgs) {
const headers = {
'content-type': 'application/json'
};
Object.keys(header).forEach(key => {
headers[key.toLocaleLowerCase()] = header[key];
});
return { return {
name: 'headers', name: 'headers',
value: headers value: headers
} }
}, },
data (data) {
// 钉钉在content-type为application/json时,不会自动序列化
if (my.dd && headers['content-type'].indexOf('application/json') === 0) {
return {
name: 'data',
value: JSON.stringify(data)
}
}
return {
name: 'data',
value: data
}
},
method: 'method', // TODO 支付宝小程序仅支持 get,post method: 'method', // TODO 支付宝小程序仅支持 get,post
responseType: false responseType: false
} }
...@@ -551,12 +564,12 @@ const protocols = { // 需要做转换的 API 列表 ...@@ -551,12 +564,12 @@ const protocols = { // 需要做转换的 API 列表
returnValue: { returnValue: {
apFilePath: 'tempFilePath' apFilePath: 'tempFilePath'
} }
}, },
chooseVideo: { chooseVideo: {
// 支付宝小程序文档中未找到(仅在getSetting处提及),但实际可用 // 支付宝小程序文档中未找到(仅在getSetting处提及),但实际可用
returnValue: { returnValue: {
apFilePath: 'tempFilePath' apFilePath: 'tempFilePath'
} }
}, },
connectSocket: { connectSocket: {
args: { args: {
...@@ -640,22 +653,22 @@ const protocols = { // 需要做转换的 API 列表 ...@@ -640,22 +653,22 @@ const protocols = { // 需要做转换的 API 列表
}, },
scanCode: { scanCode: {
name: 'scan', name: 'scan',
args (fromArgs) { args (fromArgs) {
if (fromArgs.scanType === 'qrCode') { if (fromArgs.scanType === 'qrCode') {
fromArgs.type = 'qr'; fromArgs.type = 'qr';
return {
onlyFromCamera: 'hideAlbum'
}
} else if (fromArgs.scanType === 'barCode') {
fromArgs.type = 'bar';
return { return {
onlyFromCamera: 'hideAlbum' onlyFromCamera: 'hideAlbum'
} }
} else if (fromArgs.scanType === 'barCode') { } else {
fromArgs.type = 'bar';
return { return {
onlyFromCamera: 'hideAlbum' scanType: false,
} onlyFromCamera: 'hideAlbum'
} else { }
return {
scanType: false,
onlyFromCamera: 'hideAlbum'
}
} }
}, },
returnValue: { returnValue: {
...@@ -686,8 +699,16 @@ const protocols = { // 需要做转换的 API 列表 ...@@ -686,8 +699,16 @@ const protocols = { // 需要做转换的 API 列表
} }
}, },
getUserInfo: { getUserInfo: {
name: 'getAuthUserInfo', name: my.canIUse('getOpenUserInfo') ? 'getOpenUserInfo' : 'getAuthUserInfo',
returnValue (result) { returnValue (result) {
if (my.canIUse('getOpenUserInfo')) {
let response = {};
try {
response = JSON.parse(result.response).response;
} catch (e) {}
result.nickName = response.nickName;
result.avatar = response.avatar;
}
result.userInfo = { result.userInfo = {
nickName: result.nickName, nickName: result.nickName,
avatarUrl: result.avatar avatarUrl: result.avatar
...@@ -706,18 +727,18 @@ const protocols = { // 需要做转换的 API 列表 ...@@ -706,18 +727,18 @@ const protocols = { // 需要做转换的 API 列表
item.uuid = item.serviceId; item.uuid = item.serviceId;
}); });
} }
}, },
createBLEConnection: { createBLEConnection: {
name: 'connectBLEDevice', name: 'connectBLEDevice',
args: { args: {
timeout: false timeout: false
} }
}, },
closeBLEConnection: { closeBLEConnection: {
name: 'disconnectBLEDevice' name: 'disconnectBLEDevice'
}, },
onBLEConnectionStateChange: { onBLEConnectionStateChange: {
name: 'onBLEConnectionStateChanged' name: 'onBLEConnectionStateChanged'
}, },
makePhoneCall: { makePhoneCall: {
args: { args: {
...@@ -749,35 +770,35 @@ const protocols = { // 需要做转换的 API 列表 ...@@ -749,35 +770,35 @@ const protocols = { // 需要做转换的 API 列表
returnValue: { returnValue: {
brightness: 'value' brightness: 'value'
} }
}, },
showShareMenu: { showShareMenu: {
name: 'showSharePanel' name: 'showSharePanel'
}, },
hideHomeButton: { hideHomeButton: {
name: 'hideBackHome' name: 'hideBackHome'
}, },
saveImageToPhotosAlbum: { saveImageToPhotosAlbum: {
name: 'saveImage', name: 'saveImage',
args: { args: {
filePath: 'url' filePath: 'url'
} }
}, },
saveVideoToPhotosAlbum: { saveVideoToPhotosAlbum: {
args: { args: {
filePath: 'src' filePath: 'src'
} }
}, },
chooseAddress: { chooseAddress: {
name: 'getAddress', name: 'getAddress',
returnValue (result) { returnValue (result) {
let info = result.result || {}; let info = result.result || {};
result.userName = info.fullname; result.userName = info.fullname;
result.provinceName = info.prov; result.provinceName = info.prov;
result.cityName = info.city; result.cityName = info.city;
result.detailInfo = info.address; result.detailInfo = info.address;
result.telNumber = info.mobilePhone; result.telNumber = info.mobilePhone;
result.errMsg = result.resultStatus; result.errMsg = result.resultStatus;
} }
} }
}; };
......
...@@ -1448,7 +1448,8 @@ function parseBaseComponent (vueComponentOptions, { ...@@ -1448,7 +1448,8 @@ function parseBaseComponent (vueComponentOptions, {
const options = { const options = {
multipleSlots: true, multipleSlots: true,
addGlobalClass: true addGlobalClass: true,
...(vueOptions.options || {})
}; };
const componentOptions = { const componentOptions = {
......
...@@ -1366,10 +1366,11 @@ function parseBaseComponent (vueComponentOptions, { ...@@ -1366,10 +1366,11 @@ function parseBaseComponent (vueComponentOptions, {
const options = { const options = {
multipleSlots: true, multipleSlots: true,
addGlobalClass: true addGlobalClass: true,
...(vueOptions.options || {})
}; };
{ {
// 微信 multipleSlots 部分情况有 bug,导致内容顺序错乱 如 u-list,提供覆盖选项 // 微信 multipleSlots 部分情况有 bug,导致内容顺序错乱 如 u-list,提供覆盖选项
if (vueOptions['mp-weixin'] && vueOptions['mp-weixin']['options']) { if (vueOptions['mp-weixin'] && vueOptions['mp-weixin']['options']) {
Object.assign(options, vueOptions['mp-weixin']['options']); Object.assign(options, vueOptions['mp-weixin']['options']);
......
...@@ -1538,7 +1538,8 @@ function parseBaseComponent (vueComponentOptions, { ...@@ -1538,7 +1538,8 @@ function parseBaseComponent (vueComponentOptions, {
const options = { const options = {
multipleSlots: true, multipleSlots: true,
addGlobalClass: true addGlobalClass: true,
...(vueOptions.options || {})
}; };
const componentOptions = { const componentOptions = {
......
...@@ -1319,10 +1319,11 @@ function parseBaseComponent (vueComponentOptions, { ...@@ -1319,10 +1319,11 @@ function parseBaseComponent (vueComponentOptions, {
const options = { const options = {
multipleSlots: true, multipleSlots: true,
addGlobalClass: true addGlobalClass: true,
...(vueOptions.options || {})
}; };
{ {
// 微信 multipleSlots 部分情况有 bug,导致内容顺序错乱 如 u-list,提供覆盖选项 // 微信 multipleSlots 部分情况有 bug,导致内容顺序错乱 如 u-list,提供覆盖选项
if (vueOptions['mp-weixin'] && vueOptions['mp-weixin']['options']) { if (vueOptions['mp-weixin'] && vueOptions['mp-weixin']['options']) {
Object.assign(options, vueOptions['mp-weixin']['options']); Object.assign(options, vueOptions['mp-weixin']['options']);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册