Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
DCloud
uni-app
提交
f6280541
U
uni-app
项目概览
DCloud
/
uni-app
3 个月 前同步成功
通知
723
Star
38705
Fork
3642
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
7
列表
看板
标记
里程碑
合并请求
1
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
U
uni-app
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
7
Issue
7
列表
看板
标记
里程碑
合并请求
1
合并请求
1
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
f6280541
编写于
8月 16, 2022
作者:
DCloud-WZF
💬
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
feat(mp): add initUnknownHooks
上级
c2696d7b
变更
5
隐藏空白更改
内联
并排
Showing
5 changed file
with
38 addition
and
1 deletion
+38
-1
src/core/runtime/wrapper/util.js
src/core/runtime/wrapper/util.js
+29
-0
src/platforms/mp-alipay/runtime/wrapper/page-parser.js
src/platforms/mp-alipay/runtime/wrapper/page-parser.js
+2
-0
src/platforms/mp-weixin/runtime/wrapper/app-base-parser.js
src/platforms/mp-weixin/runtime/wrapper/app-base-parser.js
+2
-0
src/platforms/mp-weixin/runtime/wrapper/page-base-parser.js
src/platforms/mp-weixin/runtime/wrapper/page-base-parser.js
+3
-1
src/platforms/mp-xhs/runtime/wrapper/page-parser.js
src/platforms/mp-xhs/runtime/wrapper/page-parser.js
+2
-0
未找到文件。
src/core/runtime/wrapper/util.js
浏览文件 @
f6280541
...
...
@@ -69,6 +69,35 @@ export function initHooks (mpOptions, hooks, vueOptions) {
})
}
export
function
initUnknownHooks
(
mpOptions
,
vueOptions
,
excludes
=
[])
{
findHooks
(
vueOptions
).
forEach
((
hook
)
=>
initHook
(
mpOptions
,
hook
,
excludes
))
}
function
findHooks
(
vueOptions
,
hooks
=
[])
{
if
(
vueOptions
)
{
Object
.
keys
(
vueOptions
).
forEach
((
name
)
=>
{
if
(
name
.
indexOf
(
'
on
'
)
===
0
&&
isFn
(
vueOptions
[
name
]))
{
hooks
.
push
(
name
)
}
})
}
return
hooks
}
function
initHook
(
mpOptions
,
hook
,
excludes
)
{
if
(
excludes
.
indexOf
(
hook
)
===
-
1
&&
!
hasOwn
(
mpOptions
,
hook
))
{
mpOptions
[
hook
]
=
function
(
args
)
{
if
(
(
__PLATFORM__
===
'
mp-toutiao
'
||
__PLATFORM__
===
'
mp-lark
'
)
&&
hook
===
'
onError
'
)
{
return
getApp
().
$vm
.
$callHook
(
hook
,
args
)
}
return
this
.
$vm
&&
this
.
$vm
.
__call_hook
(
hook
,
args
)
}
}
}
export
function
initVueComponent
(
Vue
,
vueOptions
)
{
vueOptions
=
vueOptions
.
default
||
vueOptions
let
VueComponent
...
...
src/platforms/mp-alipay/runtime/wrapper/page-parser.js
浏览文件 @
f6280541
...
...
@@ -7,6 +7,7 @@ import {
import
{
initData
,
initHooks
,
initUnknownHooks
,
handleEvent
,
initBehaviors
,
initVueComponent
,
...
...
@@ -93,6 +94,7 @@ export default function parsePage (vuePageOptions) {
}
initHooks
(
pageOptions
,
hooks
,
vuePageOptions
)
initUnknownHooks
(
pageOptions
,
vuePageOptions
)
if
(
Array
.
isArray
(
vueOptions
.
wxsCallMethods
))
{
vueOptions
.
wxsCallMethods
.
forEach
(
callMethod
=>
{
...
...
src/platforms/mp-weixin/runtime/wrapper/app-base-parser.js
浏览文件 @
f6280541
...
...
@@ -2,6 +2,7 @@ import Vue from 'vue'
import
{
initHooks
,
initUnknownHooks
,
initMocks
}
from
'
uni-wrapper/util
'
...
...
@@ -190,6 +191,7 @@ export default function parseBaseApp (vm, {
initAppLocale
(
Vue
,
vm
,
normalizeLocale
(
__GLOBAL__
.
getSystemInfoSync
().
language
)
||
LOCALE_EN
)
initHooks
(
appOptions
,
hooks
)
initUnknownHooks
(
appOptions
,
vm
.
$options
)
return
appOptions
}
src/platforms/mp-weixin/runtime/wrapper/page-base-parser.js
浏览文件 @
f6280541
...
...
@@ -4,6 +4,7 @@ import {
import
{
initHooks
,
initUnknownHooks
,
PAGE_EVENT_HOOKS
}
from
'
uni-wrapper/util
'
...
...
@@ -27,6 +28,7 @@ export default function parseBasePage (vuePageOptions, {
})
initHooks
(
pageOptions
.
methods
,
hooks
,
vuePageOptions
)
initUnknownHooks
(
pageOptions
.
methods
,
vuePageOptions
)
pageOptions
.
methods
.
onLoad
=
function
(
query
)
{
this
.
options
=
query
...
...
@@ -40,4 +42,4 @@ export default function parseBasePage (vuePageOptions, {
}
return
pageOptions
}
}
src/platforms/mp-xhs/runtime/wrapper/page-parser.js
浏览文件 @
f6280541
...
...
@@ -7,6 +7,7 @@ import {
import
{
initData
,
initHooks
,
initUnknownHooks
,
handleEvent
,
initBehaviors
,
initVueComponent
,
...
...
@@ -80,6 +81,7 @@ export default function parsePage (vuePageOptions) {
}
initHooks
(
pageOptions
,
hooks
,
vuePageOptions
)
initUnknownHooks
(
pageOptions
,
vuePageOptions
)
if
(
Array
.
isArray
(
vueOptions
.
wxsCallMethods
))
{
vueOptions
.
wxsCallMethods
.
forEach
(
callMethod
=>
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录