From a820fb9cd6441bf82963551716c185cf2e051af3 Mon Sep 17 00:00:00 2001 From: vimcaw Date: Wed, 27 Mar 2019 15:35:43 +0800 Subject: [PATCH] =?UTF-8?q?feat(taro):=20=E6=94=B9=E8=BF=9B=E4=BA=8B?= =?UTF-8?q?=E4=BB=B6=E5=A4=84=E7=90=86=E5=87=BD=E6=95=B0=E4=B8=8D=E5=AD=98?= =?UTF-8?q?=E5=9C=A8=E6=97=B6=E7=9A=84=E9=94=99=E8=AF=AF=E6=8F=90=E7=A4=BA?= =?UTF-8?q?,=20close=20#2600?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- packages/taro-alipay/src/create-component.js | 6 +++++- packages/taro-swan/src/create-component.js | 6 +++++- packages/taro-tt/src/create-component.js | 6 +++++- packages/taro-weapp/src/create-component.js | 6 +++++- 4 files changed, 20 insertions(+), 4 deletions(-) diff --git a/packages/taro-alipay/src/create-component.js b/packages/taro-alipay/src/create-component.js index c0b95e448ed4..aef5e061a225 100644 --- a/packages/taro-alipay/src/create-component.js +++ b/packages/taro-alipay/src/create-component.js @@ -127,7 +127,11 @@ function processEvent (eventHandlerName, obj) { } realArgs = [...datasetArgs, event] } - return scope[eventHandlerName].apply(callScope, realArgs) + if (scope[eventHandlerName]) { + return scope[eventHandlerName].apply(callScope, realArgs) + } else { + throw `事件处理函数${eventHandlerName}不存在` + } } } diff --git a/packages/taro-swan/src/create-component.js b/packages/taro-swan/src/create-component.js index 9a1ec81ea754..f3e7360659f9 100644 --- a/packages/taro-swan/src/create-component.js +++ b/packages/taro-swan/src/create-component.js @@ -144,7 +144,11 @@ function processEvent (eventHandlerName, obj) { } realArgs = [_scope, ...datasetArgs, ...detailArgs, event] } - return scope[eventHandlerName].apply(callScope, realArgs) + if (scope[eventHandlerName]) { + return scope[eventHandlerName].apply(callScope, realArgs) + } else { + throw `事件处理函数${eventHandlerName}不存在` + } } } diff --git a/packages/taro-tt/src/create-component.js b/packages/taro-tt/src/create-component.js index 5831e12c9637..fcdd6890c5b6 100644 --- a/packages/taro-tt/src/create-component.js +++ b/packages/taro-tt/src/create-component.js @@ -147,7 +147,11 @@ function processEvent (eventHandlerName, obj) { } realArgs = [_scope, ...datasetArgs, ...detailArgs, event] } - return scope[eventHandlerName].apply(callScope, realArgs) + if (scope[eventHandlerName]) { + return scope[eventHandlerName].apply(callScope, realArgs) + } else { + throw `事件处理函数${eventHandlerName}不存在` + } } } diff --git a/packages/taro-weapp/src/create-component.js b/packages/taro-weapp/src/create-component.js index b96c29bf66da..92d90cf93c7f 100644 --- a/packages/taro-weapp/src/create-component.js +++ b/packages/taro-weapp/src/create-component.js @@ -176,7 +176,11 @@ function processEvent (eventHandlerName, obj) { } realArgs = [_scope, ...datasetArgs, ...detailArgs, event] } - return scope[eventHandlerName].apply(callScope, realArgs) + if (scope[eventHandlerName]) { + return scope[eventHandlerName].apply(callScope, realArgs) + } else { + throw `事件处理函数${eventHandlerName}不存在` + } } }