提交 0f3bb2fe 编写于 作者: fxy060608's avatar fxy060608

build uni runtime(mp), app-plus(subNVue)

上级 d9d838a1
...@@ -40,7 +40,7 @@ const camelize = cached((str) => { ...@@ -40,7 +40,7 @@ const camelize = cached((str) => {
return str.replace(camelizeRE, (_, c) => c ? c.toUpperCase() : '') return str.replace(camelizeRE, (_, c) => c ? c.toUpperCase() : '')
}); });
const SYNC_API_RE = /subNVue|requireNativePlugin|upx2px|hideKeyboard|canIUse|^create|Sync$|Manager$|base64ToArrayBuffer|arrayBufferToBase64/; const SYNC_API_RE = /getSubNVueById|requireNativePlugin|upx2px|hideKeyboard|canIUse|^create|Sync$|Manager$|base64ToArrayBuffer|arrayBufferToBase64/;
const CONTEXT_API_RE = /^create|Manager$/; const CONTEXT_API_RE = /^create|Manager$/;
...@@ -254,6 +254,21 @@ TODOS.forEach(function (name) { ...@@ -254,6 +254,21 @@ TODOS.forEach(function (name) {
function wrapper$1 (webview) { function wrapper$1 (webview) {
webview.$processed = true; webview.$processed = true;
webview.postMessage = function (data) {
plus.webview.postMessageToUniNView({
type: 'UniAppSubNVue',
data
}, webview.id);
};
let callbacks = [];
webview.onMessage = function (callback) {
callbacks.push(callback);
};
webview.$consumeMessage = function (e) {
callbacks.forEach(callback => callback(e));
};
if (!webview.__uniapp_mask_id) { if (!webview.__uniapp_mask_id) {
return return
} }
...@@ -286,33 +301,15 @@ function wrapper$1 (webview) { ...@@ -286,33 +301,15 @@ function wrapper$1 (webview) {
callbacks = []; callbacks = [];
return oldClose.apply(webview, args) return oldClose.apply(webview, args)
}; };
webview.postMessage = function (data) {
plus.webview.postMessageToUniNView({
type: 'UniAppSubNVue',
data,
options: {
id: webview.id
}
}, webview.id);
};
let callbacks = [];
webview.onMessage = function (callback) {
callbacks.push(callback);
};
webview.$consumeMessage = function (e) {
callbacks.forEach(callback => callback(e));
};
} }
const subNVue = { function getSubNVueById (id) {
getSubNVueById (id) { const webview = plus.webview.getWebviewById(id);
const webview = plus.webview.getWebviewById(id); if (webview && !webview.$processed) {
if (webview && !webview.$processed) { wrapper$1(webview);
wrapper$1(webview);
}
return webview
} }
}; return webview
}
function requireNativePlugin (pluginName) { function requireNativePlugin (pluginName) {
/* eslint-disable no-undef */ /* eslint-disable no-undef */
...@@ -325,7 +322,7 @@ function requireNativePlugin (pluginName) { ...@@ -325,7 +322,7 @@ function requireNativePlugin (pluginName) {
var api = /*#__PURE__*/Object.freeze({ var api = /*#__PURE__*/Object.freeze({
requireNativePlugin: requireNativePlugin, requireNativePlugin: requireNativePlugin,
subNVue: subNVue getSubNVueById: getSubNVueById
}); });
const MPPage = Page; const MPPage = Page;
......
{ {
"name": "@dcloudio/uni-app-plus", "name": "@dcloudio/uni-app-plus",
"version": "0.0.232", "version": "0.0.233",
"description": "uni-app app-plus", "description": "uni-app app-plus",
"main": "dist/index.js", "main": "dist/index.js",
"scripts": { "scripts": {
......
...@@ -40,7 +40,7 @@ const camelize = cached((str) => { ...@@ -40,7 +40,7 @@ const camelize = cached((str) => {
return str.replace(camelizeRE, (_, c) => c ? c.toUpperCase() : '') return str.replace(camelizeRE, (_, c) => c ? c.toUpperCase() : '')
}); });
const SYNC_API_RE = /subNVue|requireNativePlugin|upx2px|hideKeyboard|canIUse|^create|Sync$|Manager$|base64ToArrayBuffer|arrayBufferToBase64/; const SYNC_API_RE = /getSubNVueById|requireNativePlugin|upx2px|hideKeyboard|canIUse|^create|Sync$|Manager$|base64ToArrayBuffer|arrayBufferToBase64/;
const CONTEXT_API_RE = /^create|Manager$/; const CONTEXT_API_RE = /^create|Manager$/;
......
{ {
"name": "@dcloudio/uni-mp-alipay", "name": "@dcloudio/uni-mp-alipay",
"version": "0.0.803", "version": "0.0.804",
"description": "uni-app mp-alipay", "description": "uni-app mp-alipay",
"main": "dist/index.js", "main": "dist/index.js",
"scripts": { "scripts": {
......
...@@ -40,7 +40,7 @@ const camelize = cached((str) => { ...@@ -40,7 +40,7 @@ const camelize = cached((str) => {
return str.replace(camelizeRE, (_, c) => c ? c.toUpperCase() : '') return str.replace(camelizeRE, (_, c) => c ? c.toUpperCase() : '')
}); });
const SYNC_API_RE = /subNVue|requireNativePlugin|upx2px|hideKeyboard|canIUse|^create|Sync$|Manager$/; const SYNC_API_RE = /getSubNVueById|requireNativePlugin|upx2px|hideKeyboard|canIUse|^create|Sync$|Manager$|base64ToArrayBuffer|arrayBufferToBase64/;
const CONTEXT_API_RE = /^create|Manager$/; const CONTEXT_API_RE = /^create|Manager$/;
...@@ -88,17 +88,17 @@ function promisify (name, api) { ...@@ -88,17 +88,17 @@ function promisify (name, api) {
success: resolve, success: resolve,
fail: reject fail: reject
}), ...params); }), ...params);
/* eslint-disable no-extend-native */ /* eslint-disable no-extend-native */
if (!Promise.prototype.finally) { if (!Promise.prototype.finally) {
Promise.prototype.finally = function (callback) { Promise.prototype.finally = function (callback) {
const promise = this.constructor; const promise = this.constructor;
return this.then( return this.then(
value => promise.resolve(callback()).then(() => value), value => promise.resolve(callback()).then(() => value),
reason => promise.resolve(callback()).then(() => { reason => promise.resolve(callback()).then(() => {
throw reason throw reason
}) })
) )
}; };
} }
})) }))
} }
......
{ {
"name": "@dcloudio/uni-mp-baidu", "name": "@dcloudio/uni-mp-baidu",
"version": "0.0.830", "version": "0.0.831",
"description": "uni-app mp-baidu", "description": "uni-app mp-baidu",
"main": "dist/index.js", "main": "dist/index.js",
"scripts": { "scripts": {
......
...@@ -40,7 +40,7 @@ const camelize = cached((str) => { ...@@ -40,7 +40,7 @@ const camelize = cached((str) => {
return str.replace(camelizeRE, (_, c) => c ? c.toUpperCase() : '') return str.replace(camelizeRE, (_, c) => c ? c.toUpperCase() : '')
}); });
const SYNC_API_RE = /subNVue|requireNativePlugin|upx2px|hideKeyboard|canIUse|^create|Sync$|Manager$/; const SYNC_API_RE = /getSubNVueById|requireNativePlugin|upx2px|hideKeyboard|canIUse|^create|Sync$|Manager$|base64ToArrayBuffer|arrayBufferToBase64/;
const CONTEXT_API_RE = /^create|Manager$/; const CONTEXT_API_RE = /^create|Manager$/;
...@@ -88,17 +88,17 @@ function promisify (name, api) { ...@@ -88,17 +88,17 @@ function promisify (name, api) {
success: resolve, success: resolve,
fail: reject fail: reject
}), ...params); }), ...params);
/* eslint-disable no-extend-native */ /* eslint-disable no-extend-native */
if (!Promise.prototype.finally) { if (!Promise.prototype.finally) {
Promise.prototype.finally = function (callback) { Promise.prototype.finally = function (callback) {
const promise = this.constructor; const promise = this.constructor;
return this.then( return this.then(
value => promise.resolve(callback()).then(() => value), value => promise.resolve(callback()).then(() => value),
reason => promise.resolve(callback()).then(() => { reason => promise.resolve(callback()).then(() => {
throw reason throw reason
}) })
) )
}; };
} }
})) }))
} }
......
{ {
"name": "@dcloudio/uni-mp-toutiao", "name": "@dcloudio/uni-mp-toutiao",
"version": "0.0.328", "version": "0.0.329",
"description": "uni-app mp-toutiao", "description": "uni-app mp-toutiao",
"main": "dist/index.js", "main": "dist/index.js",
"scripts": { "scripts": {
......
...@@ -40,7 +40,7 @@ const camelize = cached((str) => { ...@@ -40,7 +40,7 @@ const camelize = cached((str) => {
return str.replace(camelizeRE, (_, c) => c ? c.toUpperCase() : '') return str.replace(camelizeRE, (_, c) => c ? c.toUpperCase() : '')
}); });
const SYNC_API_RE = /subNVue|requireNativePlugin|upx2px|hideKeyboard|canIUse|^create|Sync$|Manager$|base64ToArrayBuffer|arrayBufferToBase64/; const SYNC_API_RE = /getSubNVueById|requireNativePlugin|upx2px|hideKeyboard|canIUse|^create|Sync$|Manager$|base64ToArrayBuffer|arrayBufferToBase64/;
const CONTEXT_API_RE = /^create|Manager$/; const CONTEXT_API_RE = /^create|Manager$/;
......
{ {
"name": "@dcloudio/uni-mp-weixin", "name": "@dcloudio/uni-mp-weixin",
"version": "0.0.952", "version": "0.0.953",
"description": "uni-app mp-weixin", "description": "uni-app mp-weixin",
"main": "dist/index.js", "main": "dist/index.js",
"scripts": { "scripts": {
......
...@@ -2,7 +2,7 @@ import { ...@@ -2,7 +2,7 @@ import {
isFn isFn
} from 'uni-shared' } from 'uni-shared'
const SYNC_API_RE = /subNVue|requireNativePlugin|upx2px|hideKeyboard|canIUse|^create|Sync$|Manager$|base64ToArrayBuffer|arrayBufferToBase64/ const SYNC_API_RE = /getSubNVueById|requireNativePlugin|upx2px|hideKeyboard|canIUse|^create|Sync$|Manager$|base64ToArrayBuffer|arrayBufferToBase64/
const CONTEXT_API_RE = /^create|Manager$/ const CONTEXT_API_RE = /^create|Manager$/
......
...@@ -4,10 +4,7 @@ function wrapper (webview) { ...@@ -4,10 +4,7 @@ function wrapper (webview) {
webview.postMessage = function (data) { webview.postMessage = function (data) {
plus.webview.postMessageToUniNView({ plus.webview.postMessageToUniNView({
type: 'UniAppSubNVue', type: 'UniAppSubNVue',
data, data
options: {
id: webview.id
}
}, webview.id) }, webview.id)
} }
let callbacks = [] let callbacks = []
...@@ -52,12 +49,10 @@ function wrapper (webview) { ...@@ -52,12 +49,10 @@ function wrapper (webview) {
} }
} }
export const subNVue = { export function getSubNVueById (id) {
getSubNVueById (id) { const webview = plus.webview.getWebviewById(id)
const webview = plus.webview.getWebviewById(id) if (webview && !webview.$processed) {
if (webview && !webview.$processed) { wrapper(webview)
wrapper(webview)
}
return webview
} }
return webview
} }
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册