You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@weex.apache.org by ac...@apache.org on 2017/08/08 08:55:29 UTC
[17/39] incubator-weex git commit: * [jsfm] support to pass
ArrayBuffer to native
* [jsfm] support to pass ArrayBuffer to native
Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/c938f642
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/c938f642
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/c938f642
Branch: refs/heads/0.16-dev
Commit: c938f6420499586dfd383de712b6af7fabbb3830
Parents: f40f596
Author: Hanks <zh...@gmail.com>
Authored: Tue Aug 1 17:55:36 2017 +0800
Committer: Hanks <zh...@gmail.com>
Committed: Tue Aug 1 17:55:36 2017 +0800
----------------------------------------------------------------------
html5/runtime/task-center.js | 36 +++++++++++++++++++++++++-----------
1 file changed, 25 insertions(+), 11 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/c938f642/html5/runtime/task-center.js
----------------------------------------------------------------------
diff --git a/html5/runtime/task-center.js b/html5/runtime/task-center.js
index e538631..6a0d273 100644
--- a/html5/runtime/task-center.js
+++ b/html5/runtime/task-center.js
@@ -45,7 +45,7 @@ export class TaskCenter {
typof (v) {
const s = Object.prototype.toString.call(v)
- return s.substring(8, s.length - 1).toLowerCase()
+ return s.substring(8, s.length - 1)
}
/**
@@ -59,18 +59,18 @@ export class TaskCenter {
const type = this.typof(v)
switch (type) {
- case 'undefined':
- case 'null':
+ case 'Undefined':
+ case 'Null':
return ''
- case 'regexp':
+ case 'RegExp':
return v.toString()
- case 'date':
+ case 'Date':
return v.toISOString()
- case 'number':
- case 'string':
- case 'boolean':
- case 'array':
- case 'object':
+ case 'Number':
+ case 'String':
+ case 'Boolean':
+ case 'Array':
+ case 'Object':
if (v instanceof Element) {
return v.ref
}
@@ -78,7 +78,21 @@ export class TaskCenter {
return v.$el.ref
}
return v
- case 'function':
+
+ case 'ArrayBuffer':
+ return { type, buffer: v }
+ case 'Int8Array':
+ case 'Uint8Array':
+ case 'Uint8ClampedArray':
+ case 'Int16Array':
+ case 'Uint16Array':
+ case 'Int32Array':
+ case 'Uint32Array':
+ case 'Float32Array':
+ case 'Float64Array':
+ return { type, buffer: v.buffer }
+
+ case 'Function':
return this.callbackManager.add(v).toString()
/* istanbul ignore next */
default: