Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
DCloud
uni-app
提交
357d19ea
U
uni-app
项目概览
DCloud
/
uni-app
2 个月 前同步成功
通知
717
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,发现更多精彩内容 >>
提交
357d19ea
编写于
2月 22, 2022
作者:
fxy060608
浏览文件
操作
浏览文件
下载
差异文件
chore: merge
上级
827803d2
6f15a5a1
变更
21
展开全部
隐藏空白更改
内联
并排
Showing
21 changed file
with
487 addition
and
468 deletion
+487
-468
packages/uni-api/src/index.ts
packages/uni-api/src/index.ts
+1
-1
packages/uni-app-plus/dist/uni.runtime.esm.js
packages/uni-app-plus/dist/uni.runtime.esm.js
+1
-8
packages/uni-app-plus/dist/uni.vue.js
packages/uni-app-plus/dist/uni.vue.js
+1
-8
packages/uni-h5-vite/lib/api.json
packages/uni-h5-vite/lib/api.json
+1
-1
packages/uni-h5/dist/uni-h5.cjs.js
packages/uni-h5/dist/uni-h5.cjs.js
+141
-145
packages/uni-h5/dist/uni-h5.es.js
packages/uni-h5/dist/uni-h5.es.js
+145
-156
packages/uni-mp-alipay/dist/uni.api.esm.js
packages/uni-mp-alipay/dist/uni.api.esm.js
+18
-18
packages/uni-mp-baidu/dist/uni.api.esm.js
packages/uni-mp-baidu/dist/uni.api.esm.js
+18
-18
packages/uni-mp-core/src/api/index.ts
packages/uni-mp-core/src/api/index.ts
+1
-1
packages/uni-mp-kuaishou/dist/uni.api.esm.js
packages/uni-mp-kuaishou/dist/uni.api.esm.js
+18
-18
packages/uni-mp-lark/dist/uni.api.esm.js
packages/uni-mp-lark/dist/uni.api.esm.js
+18
-18
packages/uni-mp-qq/dist/uni.api.esm.js
packages/uni-mp-qq/dist/uni.api.esm.js
+18
-18
packages/uni-mp-toutiao/dist/uni.api.esm.js
packages/uni-mp-toutiao/dist/uni.api.esm.js
+18
-18
packages/uni-mp-weixin/dist/uni.api.esm.js
packages/uni-mp-weixin/dist/uni.api.esm.js
+18
-18
packages/uni-quickapp-webview/dist/uni.api.esm.js
packages/uni-quickapp-webview/dist/uni.api.esm.js
+18
-18
packages/uni-shared/dist/uni-shared.cjs.js
packages/uni-shared/dist/uni-shared.cjs.js
+20
-0
packages/uni-shared/dist/uni-shared.d.ts
packages/uni-shared/dist/uni-shared.d.ts
+11
-0
packages/uni-shared/dist/uni-shared.es.js
packages/uni-shared/dist/uni-shared.es.js
+19
-1
packages/uni-shared/src/index.ts
packages/uni-shared/src/index.ts
+1
-0
packages/uni-shared/src/onCreateVueApp.ts
packages/uni-shared/src/onCreateVueApp.ts
+0
-0
packages/uni-vue/src/index.ts
packages/uni-vue/src/index.ts
+1
-3
未找到文件。
packages/uni-api/src/index.ts
浏览文件 @
357d19ea
...
...
@@ -103,7 +103,7 @@ export * from './protocols/ad/fullScreenVideoAd'
export
*
from
'
./protocols/ad/interstitialAd
'
export
*
from
'
./protocols/ad/interactiveAd
'
export
{
onCreateVueApp
}
from
'
@dcloudio/uni-
vue
'
export
{
onCreateVueApp
}
from
'
@dcloudio/uni-
shared
'
// helpers
export
{
...
...
packages/uni-app-plus/dist/uni.runtime.esm.js
浏览文件 @
357d19ea
import { isArray as isArray$1, hasOwn as hasOwn$1, isString, isPlainObject, isObject as isObject$1, toRawType, capitalize, makeMap, isFunction, isPromise, extend, toTypeString } from '@vue/shared';
import { LINEFEED, once, I18N_JSON_DELIMITERS, Emitter, addLeadingSlash, resolveComponentInstance, invokeArrayFns, ON_RESIZE, ON_APP_ENTER_FOREGROUND, ON_APP_ENTER_BACKGROUND, ON_SHOW, ON_HIDE, ON_PAGE_SCROLL, ON_REACH_BOTTOM, SCHEME_RE, DATA_RE, cacheStringFunction, parseQuery, ON_ERROR, callOptions, PRIMARY_COLOR, removeLeadingSlash, getLen, formatLog, TABBAR_HEIGHT, NAVBAR_HEIGHT, ON_THEME_CHANGE, ON_KEYBOARD_HEIGHT_CHANGE, BACKGROUND_COLOR, ON_NAVIGATION_BAR_BUTTON_TAP, stringifyQuery as stringifyQuery$1, debounce, ON_PULL_DOWN_REFRESH, ON_NAVIGATION_BAR_SEARCH_INPUT_CHANGED, ON_NAVIGATION_BAR_SEARCH_INPUT_CONFIRMED, ON_NAVIGATION_BAR_SEARCH_INPUT_CLICKED, ON_NAVIGATION_BAR_SEARCH_INPUT_FOCUS_CHANGED, ON_BACK_PRESS, UniNode, NODE_TYPE_PAGE, ACTION_TYPE_PAGE_CREATE, ACTION_TYPE_PAGE_CREATED, ACTION_TYPE_PAGE_SCROLL, ACTION_TYPE_INSERT, ACTION_TYPE_CREATE, ACTION_TYPE_REMOVE, ACTION_TYPE_ADD_EVENT, ACTION_TYPE_ADD_WXS_EVENT, ACTION_TYPE_REMOVE_EVENT, ACTION_TYPE_SET_ATTRIBUTE, ACTION_TYPE_REMOVE_ATTRIBUTE, ACTION_TYPE_SET_TEXT, ON_READY, ON_UNLOAD, EventChannel, ON_REACH_BOTTOM_DISTANCE, parseUrl, ON_TAB_ITEM_TAP, ON_LAUNCH, ACTION_TYPE_EVENT, createUniEvent, ON_WXS_INVOKE_CALL_METHOD, WEB_INVOKE_APPSERVICE } from '@dcloudio/uni-shared';
import { LINEFEED, once, I18N_JSON_DELIMITERS, Emitter, addLeadingSlash, resolveComponentInstance, invokeArrayFns, ON_RESIZE, ON_APP_ENTER_FOREGROUND, ON_APP_ENTER_BACKGROUND, ON_SHOW, ON_HIDE, ON_PAGE_SCROLL, ON_REACH_BOTTOM, SCHEME_RE, DATA_RE, cacheStringFunction, parseQuery, ON_ERROR, callOptions, PRIMARY_COLOR, removeLeadingSlash, getLen, formatLog, TABBAR_HEIGHT, NAVBAR_HEIGHT, ON_THEME_CHANGE, ON_KEYBOARD_HEIGHT_CHANGE, BACKGROUND_COLOR, ON_NAVIGATION_BAR_BUTTON_TAP, stringifyQuery as stringifyQuery$1, debounce, ON_PULL_DOWN_REFRESH, ON_NAVIGATION_BAR_SEARCH_INPUT_CHANGED, ON_NAVIGATION_BAR_SEARCH_INPUT_CONFIRMED, ON_NAVIGATION_BAR_SEARCH_INPUT_CLICKED, ON_NAVIGATION_BAR_SEARCH_INPUT_FOCUS_CHANGED, ON_BACK_PRESS, UniNode, NODE_TYPE_PAGE, ACTION_TYPE_PAGE_CREATE, ACTION_TYPE_PAGE_CREATED, ACTION_TYPE_PAGE_SCROLL, ACTION_TYPE_INSERT, ACTION_TYPE_CREATE, ACTION_TYPE_REMOVE, ACTION_TYPE_ADD_EVENT, ACTION_TYPE_ADD_WXS_EVENT, ACTION_TYPE_REMOVE_EVENT, ACTION_TYPE_SET_ATTRIBUTE, ACTION_TYPE_REMOVE_ATTRIBUTE, ACTION_TYPE_SET_TEXT, ON_READY, ON_UNLOAD, EventChannel, ON_REACH_BOTTOM_DISTANCE, parseUrl,
onCreateVueApp,
ON_TAB_ITEM_TAP, ON_LAUNCH, ACTION_TYPE_EVENT, createUniEvent, ON_WXS_INVOKE_CALL_METHOD, WEB_INVOKE_APPSERVICE } from '@dcloudio/uni-shared';
import { ref, createVNode, render, queuePostFlushCb, getCurrentInstance, onMounted, nextTick, onBeforeUnmount } from 'vue';
/*
...
...
@@ -12439,13 +12439,6 @@ const CreateInteractiveAdProtocol = {
},
};
/**
* 提供 createApp 的回调事件,方便三方插件接收 App 对象,处理挂靠全局 mixin 之类的逻辑
* @param hook
*/
function onCreateVueApp(hook) {
}
function warpPlusSuccessCallback(resolve, after) {
return function successCallback(data) {
delete data.code;
...
...
packages/uni-app-plus/dist/uni.vue.js
浏览文件 @
357d19ea
import
{
isString
,
isArray
,
isFunction
}
from
'
@vue/shared
'
;
import
{
invokeArrayFns
,
ON_LOAD
,
LINEFEED
,
ON_SHOW
,
RENDERJS_MODULES
,
WXS_PROTOCOL
,
formatLog
,
WXS_MODULES
,
UniLifecycleHooks
,
ON_ERROR
}
from
'
@dcloudio/uni-shared
'
;
import
{
invokeArrayFns
,
ON_LOAD
,
LINEFEED
,
ON_SHOW
,
RENDERJS_MODULES
,
WXS_PROTOCOL
,
formatLog
,
WXS_MODULES
,
UniLifecycleHooks
,
ON_ERROR
,
invokeCreateVueAppHook
}
from
'
@dcloudio/uni-shared
'
;
import
{
nextTick
,
injectHook
}
from
'
vue
'
;
function
getCurrentPage
()
{
...
...
@@ -250,13 +250,6 @@ function uniIdMixin(globalProperties) {
};
}
let
vueApp
;
const
createVueAppHooks
=
[];
function
invokeCreateVueAppHook
(
app
)
{
vueApp
=
app
;
createVueAppHooks
.
forEach
((
hook
)
=>
hook
(
app
));
}
function
initApp
(
app
)
{
const
appConfig
=
app
.
_context
.
config
;
if
(
isFunction
(
app
.
_component
.
onError
))
{
...
...
packages/uni-h5-vite/lib/api.json
浏览文件 @
357d19ea
[
"onCreateVueApp"
,
"$emit"
,
"$off"
,
"$on"
,
...
...
@@ -80,7 +81,6 @@
"offWindowResize"
,
"onAccelerometerChange"
,
"onCompassChange"
,
"onCreateVueApp"
,
"onGyroscopeChange"
,
"onLocaleChange"
,
"onMemoryWarning"
,
...
...
packages/uni-h5/dist/uni-h5.cjs.js
浏览文件 @
357d19ea
...
...
@@ -1455,151 +1455,6 @@ const SetNavigationBarTitleProtocol = {
};
const
API_SHOW_NAVIGATION_BAR_LOADING
=
"
showNavigationBarLoading
"
;
const
API_HIDE_NAVIGATION_BAR_LOADING
=
"
hideNavigationBarLoading
"
;
function
injectLifecycleHook
(
name
,
hook
,
publicThis
,
instance
)
{
if
(
shared
.
isFunction
(
hook
))
{
vue
.
injectHook
(
name
,
hook
.
bind
(
publicThis
),
instance
);
}
}
function
initHooks
(
options
,
instance
,
publicThis
)
{
const
mpType
=
options
.
mpType
||
publicThis
.
$mpType
;
Object
.
keys
(
options
).
forEach
((
name
)
=>
{
if
(
name
.
indexOf
(
"
on
"
)
===
0
)
{
const
hooks
=
options
[
name
];
if
(
shared
.
isArray
(
hooks
))
{
hooks
.
forEach
((
hook
)
=>
injectLifecycleHook
(
name
,
hook
,
publicThis
,
instance
));
}
else
{
injectLifecycleHook
(
name
,
hooks
,
publicThis
,
instance
);
}
}
});
if
(
mpType
===
"
page
"
)
{
instance
.
__isVisible
=
true
;
try
{
invokeHook
(
publicThis
,
uniShared
.
ON_LOAD
,
instance
.
attrs
.
__pageQuery
);
delete
instance
.
attrs
.
__pageQuery
;
}
catch
(
e2
)
{
console
.
error
(
e2
.
message
+
uniShared
.
LINEFEED
+
e2
.
stack
);
}
vue
.
nextTick
(()
=>
{
invokeHook
(
publicThis
,
uniShared
.
ON_SHOW
);
});
}
}
function
applyOptions
(
options
,
instance
,
publicThis
)
{
initHooks
(
options
,
instance
,
publicThis
);
}
function
set
(
target
,
key
,
val
)
{
return
target
[
key
]
=
val
;
}
function
errorHandler
(
err
,
instance
,
info
)
{
if
(
!
instance
)
{
throw
err
;
}
const
app
=
getApp
();
if
(
!
app
||
!
app
.
$vm
)
{
throw
err
;
}
{
invokeHook
(
app
.
$vm
,
uniShared
.
ON_ERROR
,
err
);
}
}
function
mergeAsArray
(
to
,
from
)
{
return
to
?
[...
new
Set
([].
concat
(
to
,
from
))]
:
from
;
}
function
initOptionMergeStrategies
(
optionMergeStrategies
)
{
uniShared
.
UniLifecycleHooks
.
forEach
((
name
)
=>
{
optionMergeStrategies
[
name
]
=
mergeAsArray
;
});
}
let
realAtob
;
const
b64
=
"
ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=
"
;
const
b64re
=
/^
(?:[
A-Za-z
\d
+
/]{4})
*
?(?:[
A-Za-z
\d
+
/]{2}(?:
==
)?
|
[
A-Za-z
\d
+
/]{3}
=
?)?
$/
;
if
(
typeof
atob
!==
"
function
"
)
{
realAtob
=
function
(
str
)
{
str
=
String
(
str
).
replace
(
/
[\t\n\f\r
]
+/g
,
""
);
if
(
!
b64re
.
test
(
str
))
{
throw
new
Error
(
"
Failed to execute 'atob' on 'Window': The string to be decoded is not correctly encoded.
"
);
}
str
+=
"
==
"
.
slice
(
2
-
(
str
.
length
&
3
));
var
bitmap
;
var
result
=
""
;
var
r1
;
var
r2
;
var
i
=
0
;
for
(;
i
<
str
.
length
;
)
{
bitmap
=
b64
.
indexOf
(
str
.
charAt
(
i
++
))
<<
18
|
b64
.
indexOf
(
str
.
charAt
(
i
++
))
<<
12
|
(
r1
=
b64
.
indexOf
(
str
.
charAt
(
i
++
)))
<<
6
|
(
r2
=
b64
.
indexOf
(
str
.
charAt
(
i
++
)));
result
+=
r1
===
64
?
String
.
fromCharCode
(
bitmap
>>
16
&
255
)
:
r2
===
64
?
String
.
fromCharCode
(
bitmap
>>
16
&
255
,
bitmap
>>
8
&
255
)
:
String
.
fromCharCode
(
bitmap
>>
16
&
255
,
bitmap
>>
8
&
255
,
bitmap
&
255
);
}
return
result
;
};
}
else
{
realAtob
=
atob
;
}
function
b64DecodeUnicode
(
str
)
{
return
decodeURIComponent
(
realAtob
(
str
).
split
(
""
).
map
(
function
(
c
)
{
return
"
%
"
+
(
"
00
"
+
c
.
charCodeAt
(
0
).
toString
(
16
)).
slice
(
-
2
);
}).
join
(
""
));
}
function
getCurrentUserInfo
()
{
const
token
=
uni
.
getStorageSync
(
"
uni_id_token
"
)
||
""
;
const
tokenArr
=
token
.
split
(
"
.
"
);
if
(
!
token
||
tokenArr
.
length
!==
3
)
{
return
{
uid
:
null
,
role
:
[],
permission
:
[],
tokenExpired
:
0
};
}
let
userInfo
;
try
{
userInfo
=
JSON
.
parse
(
b64DecodeUnicode
(
tokenArr
[
1
]));
}
catch
(
error
)
{
throw
new
Error
(
"
\
u83B7
\
u53D6
\
u5F53
\
u524D
\
u7528
\
u6237
\
u4FE1
\
u606F
\
u51FA
\
u9519
\
uFF0C
\
u8BE6
\
u7EC6
\
u9519
\
u8BEF
\
u4FE1
\
u606F
\
u4E3A
\
uFF1A
"
+
error
.
message
);
}
userInfo
.
tokenExpired
=
userInfo
.
exp
*
1
e3
;
delete
userInfo
.
exp
;
delete
userInfo
.
iat
;
return
userInfo
;
}
function
uniIdMixin
(
globalProperties
)
{
globalProperties
.
uniIDHasRole
=
function
(
roleId
)
{
const
{
role
}
=
getCurrentUserInfo
();
return
role
.
indexOf
(
roleId
)
>
-
1
;
};
globalProperties
.
uniIDHasPermission
=
function
(
permissionId
)
{
const
{
permission
}
=
getCurrentUserInfo
();
return
this
.
uniIDHasRole
(
"
admin
"
)
||
permission
.
indexOf
(
permissionId
)
>
-
1
;
};
globalProperties
.
uniIDTokenValid
=
function
()
{
const
{
tokenExpired
}
=
getCurrentUserInfo
();
return
tokenExpired
>
Date
.
now
();
};
}
const
createVueAppHooks
=
[];
function
invokeCreateVueAppHook
(
app
)
{
createVueAppHooks
.
forEach
((
hook
)
=>
hook
(
app
));
}
function
initApp$1
(
app
)
{
const
appConfig
=
app
.
_context
.
config
;
if
(
shared
.
isFunction
(
app
.
_component
.
onError
))
{
appConfig
.
errorHandler
=
errorHandler
;
}
initOptionMergeStrategies
(
appConfig
.
optionMergeStrategies
);
const
globalProperties
=
appConfig
.
globalProperties
;
{
if
(
__UNI_FEATURE_UNI_CLOUD__
)
{
uniIdMixin
(
globalProperties
);
}
}
{
globalProperties
.
$set
=
set
;
globalProperties
.
$applyOptions
=
applyOptions
;
}
{
invokeCreateVueAppHook
(
app
);
}
}
function
saveImage
(
base64
,
dirname
,
callback
)
{
callback
(
null
,
base64
);
}
...
...
@@ -6687,6 +6542,147 @@ function useContextInfo(_id) {
const
id
=
_id
||
vm
.
id
||
`context
${
index$g
++
}
`
;
return
`
${
type
}
.
${
id
}
`
;
}
function
injectLifecycleHook
(
name
,
hook
,
publicThis
,
instance
)
{
if
(
shared
.
isFunction
(
hook
))
{
vue
.
injectHook
(
name
,
hook
.
bind
(
publicThis
),
instance
);
}
}
function
initHooks
(
options
,
instance
,
publicThis
)
{
const
mpType
=
options
.
mpType
||
publicThis
.
$mpType
;
Object
.
keys
(
options
).
forEach
((
name
)
=>
{
if
(
name
.
indexOf
(
"
on
"
)
===
0
)
{
const
hooks
=
options
[
name
];
if
(
shared
.
isArray
(
hooks
))
{
hooks
.
forEach
((
hook
)
=>
injectLifecycleHook
(
name
,
hook
,
publicThis
,
instance
));
}
else
{
injectLifecycleHook
(
name
,
hooks
,
publicThis
,
instance
);
}
}
});
if
(
mpType
===
"
page
"
)
{
instance
.
__isVisible
=
true
;
try
{
invokeHook
(
publicThis
,
uniShared
.
ON_LOAD
,
instance
.
attrs
.
__pageQuery
);
delete
instance
.
attrs
.
__pageQuery
;
}
catch
(
e2
)
{
console
.
error
(
e2
.
message
+
uniShared
.
LINEFEED
+
e2
.
stack
);
}
vue
.
nextTick
(()
=>
{
invokeHook
(
publicThis
,
uniShared
.
ON_SHOW
);
});
}
}
function
applyOptions
(
options
,
instance
,
publicThis
)
{
initHooks
(
options
,
instance
,
publicThis
);
}
function
set
(
target
,
key
,
val
)
{
return
target
[
key
]
=
val
;
}
function
errorHandler
(
err
,
instance
,
info
)
{
if
(
!
instance
)
{
throw
err
;
}
const
app
=
getApp
();
if
(
!
app
||
!
app
.
$vm
)
{
throw
err
;
}
{
invokeHook
(
app
.
$vm
,
uniShared
.
ON_ERROR
,
err
);
}
}
function
mergeAsArray
(
to
,
from
)
{
return
to
?
[...
new
Set
([].
concat
(
to
,
from
))]
:
from
;
}
function
initOptionMergeStrategies
(
optionMergeStrategies
)
{
uniShared
.
UniLifecycleHooks
.
forEach
((
name
)
=>
{
optionMergeStrategies
[
name
]
=
mergeAsArray
;
});
}
let
realAtob
;
const
b64
=
"
ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=
"
;
const
b64re
=
/^
(?:[
A-Za-z
\d
+
/]{4})
*
?(?:[
A-Za-z
\d
+
/]{2}(?:
==
)?
|
[
A-Za-z
\d
+
/]{3}
=
?)?
$/
;
if
(
typeof
atob
!==
"
function
"
)
{
realAtob
=
function
(
str
)
{
str
=
String
(
str
).
replace
(
/
[\t\n\f\r
]
+/g
,
""
);
if
(
!
b64re
.
test
(
str
))
{
throw
new
Error
(
"
Failed to execute 'atob' on 'Window': The string to be decoded is not correctly encoded.
"
);
}
str
+=
"
==
"
.
slice
(
2
-
(
str
.
length
&
3
));
var
bitmap
;
var
result
=
""
;
var
r1
;
var
r2
;
var
i
=
0
;
for
(;
i
<
str
.
length
;
)
{
bitmap
=
b64
.
indexOf
(
str
.
charAt
(
i
++
))
<<
18
|
b64
.
indexOf
(
str
.
charAt
(
i
++
))
<<
12
|
(
r1
=
b64
.
indexOf
(
str
.
charAt
(
i
++
)))
<<
6
|
(
r2
=
b64
.
indexOf
(
str
.
charAt
(
i
++
)));
result
+=
r1
===
64
?
String
.
fromCharCode
(
bitmap
>>
16
&
255
)
:
r2
===
64
?
String
.
fromCharCode
(
bitmap
>>
16
&
255
,
bitmap
>>
8
&
255
)
:
String
.
fromCharCode
(
bitmap
>>
16
&
255
,
bitmap
>>
8
&
255
,
bitmap
&
255
);
}
return
result
;
};
}
else
{
realAtob
=
atob
;
}
function
b64DecodeUnicode
(
str
)
{
return
decodeURIComponent
(
realAtob
(
str
).
split
(
""
).
map
(
function
(
c
)
{
return
"
%
"
+
(
"
00
"
+
c
.
charCodeAt
(
0
).
toString
(
16
)).
slice
(
-
2
);
}).
join
(
""
));
}
function
getCurrentUserInfo
()
{
const
token
=
uni
.
getStorageSync
(
"
uni_id_token
"
)
||
""
;
const
tokenArr
=
token
.
split
(
"
.
"
);
if
(
!
token
||
tokenArr
.
length
!==
3
)
{
return
{
uid
:
null
,
role
:
[],
permission
:
[],
tokenExpired
:
0
};
}
let
userInfo
;
try
{
userInfo
=
JSON
.
parse
(
b64DecodeUnicode
(
tokenArr
[
1
]));
}
catch
(
error
)
{
throw
new
Error
(
"
\
u83B7
\
u53D6
\
u5F53
\
u524D
\
u7528
\
u6237
\
u4FE1
\
u606F
\
u51FA
\
u9519
\
uFF0C
\
u8BE6
\
u7EC6
\
u9519
\
u8BEF
\
u4FE1
\
u606F
\
u4E3A
\
uFF1A
"
+
error
.
message
);
}
userInfo
.
tokenExpired
=
userInfo
.
exp
*
1
e3
;
delete
userInfo
.
exp
;
delete
userInfo
.
iat
;
return
userInfo
;
}
function
uniIdMixin
(
globalProperties
)
{
globalProperties
.
uniIDHasRole
=
function
(
roleId
)
{
const
{
role
}
=
getCurrentUserInfo
();
return
role
.
indexOf
(
roleId
)
>
-
1
;
};
globalProperties
.
uniIDHasPermission
=
function
(
permissionId
)
{
const
{
permission
}
=
getCurrentUserInfo
();
return
this
.
uniIDHasRole
(
"
admin
"
)
||
permission
.
indexOf
(
permissionId
)
>
-
1
;
};
globalProperties
.
uniIDTokenValid
=
function
()
{
const
{
tokenExpired
}
=
getCurrentUserInfo
();
return
tokenExpired
>
Date
.
now
();
};
}
function
initApp$1
(
app
)
{
const
appConfig
=
app
.
_context
.
config
;
if
(
shared
.
isFunction
(
app
.
_component
.
onError
))
{
appConfig
.
errorHandler
=
errorHandler
;
}
initOptionMergeStrategies
(
appConfig
.
optionMergeStrategies
);
const
globalProperties
=
appConfig
.
globalProperties
;
{
if
(
__UNI_FEATURE_UNI_CLOUD__
)
{
uniIdMixin
(
globalProperties
);
}
}
{
globalProperties
.
$set
=
set
;
globalProperties
.
$applyOptions
=
applyOptions
;
}
{
uniShared
.
invokeCreateVueAppHook
(
app
);
}
}
const
pageMetaKey
=
PolySymbol
(
process
.
env
.
NODE_ENV
!==
"
production
"
?
"
UniPageMeta
"
:
"
upm
"
);
function
usePageMeta
()
{
return
vue
.
inject
(
pageMetaKey
);
...
...
packages/uni-h5/dist/uni-h5.es.js
浏览文件 @
357d19ea
此差异已折叠。
点击以展开。
packages/uni-mp-alipay/dist/uni.api.esm.js
浏览文件 @
357d19ea
import
{
isArray
,
hasOwn
,
isString
,
isPlainObject
,
isObject
,
capitalize
,
toRawType
,
makeMap
,
isFunction
,
isPromise
,
extend
}
from
'
@vue/shared
'
;
let
vueApp
;
const
createVueAppHooks
=
[];
/**
* 提供 createApp 的回调事件,方便三方插件接收 App 对象,处理挂靠全局 mixin 之类的逻辑
* @param hook
*/
function
onCreateVueApp
(
hook
)
{
// TODO 每个 nvue 页面都会触发
if
(
vueApp
)
{
return
hook
(
vueApp
);
}
createVueAppHooks
.
push
(
hook
);
}
function
invokeCreateVueAppHook
(
app
)
{
vueApp
=
app
;
createVueAppHooks
.
forEach
((
hook
)
=>
hook
(
app
));
}
const
eventChannels
=
{};
const
eventChannelStack
=
[];
let
id
=
0
;
...
...
@@ -661,24 +679,6 @@ const offPushMessage = (fn) => {
}
};
let
vueApp
;
const
createVueAppHooks
=
[];
/**
* 提供 createApp 的回调事件,方便三方插件接收 App 对象,处理挂靠全局 mixin 之类的逻辑
* @param hook
*/
function
onCreateVueApp
(
hook
)
{
// TODO 每个 nvue 页面都会触发
if
(
vueApp
)
{
return
hook
(
vueApp
);
}
createVueAppHooks
.
push
(
hook
);
}
function
invokeCreateVueAppHook
(
app
)
{
vueApp
=
app
;
createVueAppHooks
.
forEach
((
hook
)
=>
hook
(
app
));
}
const
SYNC_API_RE
=
/^
\$
|getLocale|setLocale|sendNativeEvent|restoreGlobal|getCurrentSubNVue|getMenuButtonBoundingClientRect|^report|interceptors|Interceptor$|getSubNVueById|requireNativePlugin|upx2px|hideKeyboard|canIUse|^create|Sync$|Manager$|base64ToArrayBuffer|arrayBufferToBase64/
;
const
CONTEXT_API_RE
=
/^create|Manager$/
;
// Context例外情况
...
...
packages/uni-mp-baidu/dist/uni.api.esm.js
浏览文件 @
357d19ea
import
{
isArray
,
hasOwn
,
isString
,
isPlainObject
,
isObject
,
capitalize
,
toRawType
,
makeMap
,
isFunction
,
isPromise
,
extend
}
from
'
@vue/shared
'
;
let
vueApp
;
const
createVueAppHooks
=
[];
/**
* 提供 createApp 的回调事件,方便三方插件接收 App 对象,处理挂靠全局 mixin 之类的逻辑
* @param hook
*/
function
onCreateVueApp
(
hook
)
{
// TODO 每个 nvue 页面都会触发
if
(
vueApp
)
{
return
hook
(
vueApp
);
}
createVueAppHooks
.
push
(
hook
);
}
function
invokeCreateVueAppHook
(
app
)
{
vueApp
=
app
;
createVueAppHooks
.
forEach
((
hook
)
=>
hook
(
app
));
}
const
eventChannels
=
{};
const
eventChannelStack
=
[];
let
id
=
0
;
...
...
@@ -661,24 +679,6 @@ const offPushMessage = (fn) => {
}
};
let
vueApp
;
const
createVueAppHooks
=
[];
/**
* 提供 createApp 的回调事件,方便三方插件接收 App 对象,处理挂靠全局 mixin 之类的逻辑
* @param hook
*/
function
onCreateVueApp
(
hook
)
{
// TODO 每个 nvue 页面都会触发
if
(
vueApp
)
{
return
hook
(
vueApp
);
}
createVueAppHooks
.
push
(
hook
);
}
function
invokeCreateVueAppHook
(
app
)
{
vueApp
=
app
;
createVueAppHooks
.
forEach
((
hook
)
=>
hook
(
app
));
}
const
SYNC_API_RE
=
/^
\$
|getLocale|setLocale|sendNativeEvent|restoreGlobal|getCurrentSubNVue|getMenuButtonBoundingClientRect|^report|interceptors|Interceptor$|getSubNVueById|requireNativePlugin|upx2px|hideKeyboard|canIUse|^create|Sync$|Manager$|base64ToArrayBuffer|arrayBufferToBase64/
;
const
CONTEXT_API_RE
=
/^create|Manager$/
;
// Context例外情况
...
...
packages/uni-mp-core/src/api/index.ts
浏览文件 @
357d19ea
...
...
@@ -18,7 +18,7 @@ import {
offPushMessage
,
invokePushCallback
,
}
from
'
@dcloudio/uni-api/src/service/plugin/push
'
import
{
invokeCreateVueAppHook
,
onCreateVueApp
}
from
'
@dcloudio/uni-
vue
'
import
{
invokeCreateVueAppHook
,
onCreateVueApp
}
from
'
@dcloudio/uni-
shared
'
import
{
promisify
}
from
'
./promise
'
import
{
initWrapper
}
from
'
./wrapper
'
...
...
packages/uni-mp-kuaishou/dist/uni.api.esm.js
浏览文件 @
357d19ea
import
{
isArray
,
hasOwn
,
isString
,
isPlainObject
,
isObject
,
capitalize
,
toRawType
,
makeMap
,
isFunction
,
isPromise
,
extend
}
from
'
@vue/shared
'
;
let
vueApp
;
const
createVueAppHooks
=
[];
/**
* 提供 createApp 的回调事件,方便三方插件接收 App 对象,处理挂靠全局 mixin 之类的逻辑
* @param hook
*/
function
onCreateVueApp
(
hook
)
{
// TODO 每个 nvue 页面都会触发
if
(
vueApp
)
{
return
hook
(
vueApp
);
}
createVueAppHooks
.
push
(
hook
);
}
function
invokeCreateVueAppHook
(
app
)
{
vueApp
=
app
;
createVueAppHooks
.
forEach
((
hook
)
=>
hook
(
app
));
}
const
eventChannels
=
{};
const
eventChannelStack
=
[];
let
id
=
0
;
...
...
@@ -661,24 +679,6 @@ const offPushMessage = (fn) => {
}
};
let
vueApp
;
const
createVueAppHooks
=
[];
/**
* 提供 createApp 的回调事件,方便三方插件接收 App 对象,处理挂靠全局 mixin 之类的逻辑
* @param hook
*/
function
onCreateVueApp
(
hook
)
{
// TODO 每个 nvue 页面都会触发
if
(
vueApp
)
{
return
hook
(
vueApp
);
}
createVueAppHooks
.
push
(
hook
);
}
function
invokeCreateVueAppHook
(
app
)
{
vueApp
=
app
;
createVueAppHooks
.
forEach
((
hook
)
=>
hook
(
app
));
}
const
SYNC_API_RE
=
/^
\$
|getLocale|setLocale|sendNativeEvent|restoreGlobal|getCurrentSubNVue|getMenuButtonBoundingClientRect|^report|interceptors|Interceptor$|getSubNVueById|requireNativePlugin|upx2px|hideKeyboard|canIUse|^create|Sync$|Manager$|base64ToArrayBuffer|arrayBufferToBase64/
;
const
CONTEXT_API_RE
=
/^create|Manager$/
;
// Context例外情况
...
...
packages/uni-mp-lark/dist/uni.api.esm.js
浏览文件 @
357d19ea
import
{
isArray
,
hasOwn
,
isString
,
isPlainObject
,
isObject
,
capitalize
,
toRawType
,
makeMap
,
isFunction
,
isPromise
,
extend
}
from
'
@vue/shared
'
;
let
vueApp
;
const
createVueAppHooks
=
[];
/**
* 提供 createApp 的回调事件,方便三方插件接收 App 对象,处理挂靠全局 mixin 之类的逻辑
* @param hook
*/
function
onCreateVueApp
(
hook
)
{
// TODO 每个 nvue 页面都会触发
if
(
vueApp
)
{
return
hook
(
vueApp
);
}
createVueAppHooks
.
push
(
hook
);
}
function
invokeCreateVueAppHook
(
app
)
{
vueApp
=
app
;
createVueAppHooks
.
forEach
((
hook
)
=>
hook
(
app
));
}
const
eventChannels
=
{};
const
eventChannelStack
=
[];
let
id
=
0
;
...
...
@@ -661,24 +679,6 @@ const offPushMessage = (fn) => {
}
};
let
vueApp
;
const
createVueAppHooks
=
[];
/**
* 提供 createApp 的回调事件,方便三方插件接收 App 对象,处理挂靠全局 mixin 之类的逻辑
* @param hook
*/
function
onCreateVueApp
(
hook
)
{
// TODO 每个 nvue 页面都会触发
if
(
vueApp
)
{
return
hook
(
vueApp
);
}
createVueAppHooks
.
push
(
hook
);
}
function
invokeCreateVueAppHook
(
app
)
{
vueApp
=
app
;
createVueAppHooks
.
forEach
((
hook
)
=>
hook
(
app
));
}
const
SYNC_API_RE
=
/^
\$
|getLocale|setLocale|sendNativeEvent|restoreGlobal|getCurrentSubNVue|getMenuButtonBoundingClientRect|^report|interceptors|Interceptor$|getSubNVueById|requireNativePlugin|upx2px|hideKeyboard|canIUse|^create|Sync$|Manager$|base64ToArrayBuffer|arrayBufferToBase64/
;
const
CONTEXT_API_RE
=
/^create|Manager$/
;
// Context例外情况
...
...
packages/uni-mp-qq/dist/uni.api.esm.js
浏览文件 @
357d19ea
import
{
isArray
,
hasOwn
,
isString
,
isPlainObject
,
isObject
,
capitalize
,
toRawType
,
makeMap
,
isFunction
,
isPromise
,
extend
}
from
'
@vue/shared
'
;
let
vueApp
;
const
createVueAppHooks
=
[];
/**
* 提供 createApp 的回调事件,方便三方插件接收 App 对象,处理挂靠全局 mixin 之类的逻辑
* @param hook
*/
function
onCreateVueApp
(
hook
)
{
// TODO 每个 nvue 页面都会触发
if
(
vueApp
)
{
return
hook
(
vueApp
);
}
createVueAppHooks
.
push
(
hook
);
}
function
invokeCreateVueAppHook
(
app
)
{
vueApp
=
app
;
createVueAppHooks
.
forEach
((
hook
)
=>
hook
(
app
));
}
const
eventChannels
=
{};
const
eventChannelStack
=
[];
let
id
=
0
;
...
...
@@ -661,24 +679,6 @@ const offPushMessage = (fn) => {
}
};
let
vueApp
;
const
createVueAppHooks
=
[];
/**
* 提供 createApp 的回调事件,方便三方插件接收 App 对象,处理挂靠全局 mixin 之类的逻辑
* @param hook
*/
function
onCreateVueApp
(
hook
)
{
// TODO 每个 nvue 页面都会触发
if
(
vueApp
)
{
return
hook
(
vueApp
);
}
createVueAppHooks
.
push
(
hook
);
}
function
invokeCreateVueAppHook
(
app
)
{
vueApp
=
app
;
createVueAppHooks
.
forEach
((
hook
)
=>
hook
(
app
));
}
const
SYNC_API_RE
=
/^
\$
|getLocale|setLocale|sendNativeEvent|restoreGlobal|getCurrentSubNVue|getMenuButtonBoundingClientRect|^report|interceptors|Interceptor$|getSubNVueById|requireNativePlugin|upx2px|hideKeyboard|canIUse|^create|Sync$|Manager$|base64ToArrayBuffer|arrayBufferToBase64/
;
const
CONTEXT_API_RE
=
/^create|Manager$/
;
// Context例外情况
...
...
packages/uni-mp-toutiao/dist/uni.api.esm.js
浏览文件 @
357d19ea
import
{
isArray
,
hasOwn
,
isString
,
isPlainObject
,
isObject
,
capitalize
,
toRawType
,
makeMap
,
isFunction
,
isPromise
,
extend
}
from
'
@vue/shared
'
;
let
vueApp
;
const
createVueAppHooks
=
[];
/**
* 提供 createApp 的回调事件,方便三方插件接收 App 对象,处理挂靠全局 mixin 之类的逻辑
* @param hook
*/
function
onCreateVueApp
(
hook
)
{
// TODO 每个 nvue 页面都会触发
if
(
vueApp
)
{
return
hook
(
vueApp
);
}
createVueAppHooks
.
push
(
hook
);
}
function
invokeCreateVueAppHook
(
app
)
{
vueApp
=
app
;
createVueAppHooks
.
forEach
((
hook
)
=>
hook
(
app
));
}
const
eventChannels
=
{};
const
eventChannelStack
=
[];
let
id
=
0
;
...
...
@@ -661,24 +679,6 @@ const offPushMessage = (fn) => {
}
};
let
vueApp
;
const
createVueAppHooks
=
[];
/**
* 提供 createApp 的回调事件,方便三方插件接收 App 对象,处理挂靠全局 mixin 之类的逻辑
* @param hook
*/
function
onCreateVueApp
(
hook
)
{
// TODO 每个 nvue 页面都会触发
if
(
vueApp
)
{
return
hook
(
vueApp
);
}
createVueAppHooks
.
push
(
hook
);
}
function
invokeCreateVueAppHook
(
app
)
{
vueApp
=
app
;
createVueAppHooks
.
forEach
((
hook
)
=>
hook
(
app
));
}
const
SYNC_API_RE
=
/^
\$
|getLocale|setLocale|sendNativeEvent|restoreGlobal|getCurrentSubNVue|getMenuButtonBoundingClientRect|^report|interceptors|Interceptor$|getSubNVueById|requireNativePlugin|upx2px|hideKeyboard|canIUse|^create|Sync$|Manager$|base64ToArrayBuffer|arrayBufferToBase64/
;
const
CONTEXT_API_RE
=
/^create|Manager$/
;
// Context例外情况
...
...
packages/uni-mp-weixin/dist/uni.api.esm.js
浏览文件 @
357d19ea
import
{
isArray
,
hasOwn
,
isString
,
isPlainObject
,
isObject
,
capitalize
,
toRawType
,
makeMap
,
isFunction
,
isPromise
,
extend
}
from
'
@vue/shared
'
;
let
vueApp
;
const
createVueAppHooks
=
[];
/**
* 提供 createApp 的回调事件,方便三方插件接收 App 对象,处理挂靠全局 mixin 之类的逻辑
* @param hook
*/
function
onCreateVueApp
(
hook
)
{
// TODO 每个 nvue 页面都会触发
if
(
vueApp
)
{
return
hook
(
vueApp
);
}
createVueAppHooks
.
push
(
hook
);
}
function
invokeCreateVueAppHook
(
app
)
{
vueApp
=
app
;
createVueAppHooks
.
forEach
((
hook
)
=>
hook
(
app
));
}
function
getBaseSystemInfo
()
{
return
wx
.
getSystemInfoSync
()
}
...
...
@@ -625,24 +643,6 @@ const offPushMessage = (fn) => {
}
};
let
vueApp
;
const
createVueAppHooks
=
[];
/**
* 提供 createApp 的回调事件,方便三方插件接收 App 对象,处理挂靠全局 mixin 之类的逻辑
* @param hook
*/
function
onCreateVueApp
(
hook
)
{
// TODO 每个 nvue 页面都会触发
if
(
vueApp
)
{
return
hook
(
vueApp
);
}
createVueAppHooks
.
push
(
hook
);
}
function
invokeCreateVueAppHook
(
app
)
{
vueApp
=
app
;
createVueAppHooks
.
forEach
((
hook
)
=>
hook
(
app
));
}
const
SYNC_API_RE
=
/^
\$
|getLocale|setLocale|sendNativeEvent|restoreGlobal|getCurrentSubNVue|getMenuButtonBoundingClientRect|^report|interceptors|Interceptor$|getSubNVueById|requireNativePlugin|upx2px|hideKeyboard|canIUse|^create|Sync$|Manager$|base64ToArrayBuffer|arrayBufferToBase64/
;
const
CONTEXT_API_RE
=
/^create|Manager$/
;
// Context例外情况
...
...
packages/uni-quickapp-webview/dist/uni.api.esm.js
浏览文件 @
357d19ea
import
{
isArray
,
hasOwn
,
isString
,
isPlainObject
,
isObject
,
capitalize
,
toRawType
,
makeMap
,
isFunction
,
isPromise
,
extend
}
from
'
@vue/shared
'
;
let
vueApp
;
const
createVueAppHooks
=
[];
/**
* 提供 createApp 的回调事件,方便三方插件接收 App 对象,处理挂靠全局 mixin 之类的逻辑
* @param hook
*/
function
onCreateVueApp
(
hook
)
{
// TODO 每个 nvue 页面都会触发
if
(
vueApp
)
{
return
hook
(
vueApp
);
}
createVueAppHooks
.
push
(
hook
);
}
function
invokeCreateVueAppHook
(
app
)
{
vueApp
=
app
;
createVueAppHooks
.
forEach
((
hook
)
=>
hook
(
app
));
}
const
eventChannels
=
{};
const
eventChannelStack
=
[];
let
id
=
0
;
...
...
@@ -661,24 +679,6 @@ const offPushMessage = (fn) => {
}
};
let
vueApp
;
const
createVueAppHooks
=
[];
/**
* 提供 createApp 的回调事件,方便三方插件接收 App 对象,处理挂靠全局 mixin 之类的逻辑
* @param hook
*/
function
onCreateVueApp
(
hook
)
{
// TODO 每个 nvue 页面都会触发
if
(
vueApp
)
{
return
hook
(
vueApp
);
}
createVueAppHooks
.
push
(
hook
);
}
function
invokeCreateVueAppHook
(
app
)
{
vueApp
=
app
;
createVueAppHooks
.
forEach
((
hook
)
=>
hook
(
app
));
}
const
SYNC_API_RE
=
/^
\$
|getLocale|setLocale|sendNativeEvent|restoreGlobal|getCurrentSubNVue|getMenuButtonBoundingClientRect|^report|interceptors|Interceptor$|getSubNVueById|requireNativePlugin|upx2px|hideKeyboard|canIUse|^create|Sync$|Manager$|base64ToArrayBuffer|arrayBufferToBase64/
;
const
CONTEXT_API_RE
=
/^create|Manager$/
;
// Context例外情况
...
...
packages/uni-shared/dist/uni-shared.cjs.js
浏览文件 @
357d19ea
...
...
@@ -1294,6 +1294,24 @@ const MINI_PROGRAM_PAGE_RUNTIME_HOOKS = /*#__PURE__*/ (() => {
};
})();
let
vueApp
;
const
createVueAppHooks
=
[];
/**
* 提供 createApp 的回调事件,方便三方插件接收 App 对象,处理挂靠全局 mixin 之类的逻辑
* @param hook
*/
function
onCreateVueApp
(
hook
)
{
// TODO 每个 nvue 页面都会触发
if
(
vueApp
)
{
return
hook
(
vueApp
);
}
createVueAppHooks
.
push
(
hook
);
}
function
invokeCreateVueAppHook
(
app
)
{
vueApp
=
app
;
createVueAppHooks
.
forEach
((
hook
)
=>
hook
(
app
));
}
const
E
=
function
()
{
// Keep this empty so it's easier to inherit from
// (via https://github.com/lipsmack from https://github.com/scottcorgan/tiny-emitter/issues/3)
...
...
@@ -1477,6 +1495,7 @@ exports.getLen = getLen;
exports
.
getValueByDataPath
=
getValueByDataPath
;
exports
.
initCustomDatasetOnce
=
initCustomDatasetOnce
;
exports
.
invokeArrayFns
=
invokeArrayFns
;
exports
.
invokeCreateVueAppHook
=
invokeCreateVueAppHook
;
exports
.
isAppNVueNativeTag
=
isAppNVueNativeTag
;
exports
.
isAppNativeTag
=
isAppNativeTag
;
exports
.
isBuiltInComponent
=
isBuiltInComponent
;
...
...
@@ -1489,6 +1508,7 @@ exports.isRootHook = isRootHook;
exports
.
normalizeDataset
=
normalizeDataset
;
exports
.
normalizeEventType
=
normalizeEventType
;
exports
.
normalizeTarget
=
normalizeTarget
;
exports
.
onCreateVueApp
=
onCreateVueApp
;
exports
.
once
=
once
;
exports
.
parseEventName
=
parseEventName
;
exports
.
parseQuery
=
parseQuery
;
...
...
packages/uni-shared/dist/uni-shared.d.ts
浏览文件 @
357d19ea
import
type
{
App
}
from
'
vue
'
;
import
type
{
ComponentInternalInstance
}
from
'
@vue/runtime-core
'
;
import
{
ComponentOptionsBase
}
from
'
@vue/runtime-core
'
;
import
type
{
ComponentPublicInstance
}
from
'
@vue/runtime-core
'
;
...
...
@@ -122,6 +123,8 @@ export declare function createRpx2Unit(unit: string, unitRatio: number, unitPrec
export
declare
function
createUniEvent
(
evt
:
Record
<
string
,
any
>
):
UniEvent
;
declare
type
CreateVueAppHook
=
(
app
:
App
)
=>
void
;
export
declare
function
customizeEvent
(
str
:
string
):
string
;
export
declare
const
DATA_RE
:
RegExp
;
...
...
@@ -242,6 +245,8 @@ export declare type InsertAction = [typeof ACTION_TYPE_INSERT, number, number, n
export
declare
const
invokeArrayFns
:
(
fns
:
Function
[],
arg
?:
any
)
=>
any
;
export
declare
function
invokeCreateVueAppHook
(
app
:
App
):
void
;
export
declare
function
isAppNativeTag
(
tag
:
string
):
boolean
;
export
declare
function
isAppNVueNativeTag
(
tag
:
string
):
boolean
;
...
...
@@ -476,6 +481,12 @@ export declare const ON_WXS_INVOKE_CALL_METHOD = "onWxsInvokeCallMethod";
export
declare
function
once
<
T
extends
(...
args
:
any
[])
=>
any
>
(
fn
:
T
,
ctx
?:
unknown
):
T
;
/**
* 提供 createApp 的回调事件,方便三方插件接收 App 对象,处理挂靠全局 mixin 之类的逻辑
* @param hook
*/
export
declare
function
onCreateVueApp
(
hook
:
CreateVueAppHook
):
void
;
declare
interface
Options
{
success
?:
(
res
:
any
)
=>
void
;
fail
?:
(
res
:
any
)
=>
void
;
...
...
packages/uni-shared/dist/uni-shared.es.js
浏览文件 @
357d19ea
...
...
@@ -1290,6 +1290,24 @@ const MINI_PROGRAM_PAGE_RUNTIME_HOOKS = /*#__PURE__*/ (() => {
};
})();
let
vueApp
;
const
createVueAppHooks
=
[];
/**
* 提供 createApp 的回调事件,方便三方插件接收 App 对象,处理挂靠全局 mixin 之类的逻辑
* @param hook
*/
function
onCreateVueApp
(
hook
)
{
// TODO 每个 nvue 页面都会触发
if
(
vueApp
)
{
return
hook
(
vueApp
);
}
createVueAppHooks
.
push
(
hook
);
}
function
invokeCreateVueAppHook
(
app
)
{
vueApp
=
app
;
createVueAppHooks
.
forEach
((
hook
)
=>
hook
(
app
));
}
const
E
=
function
()
{
// Keep this empty so it's easier to inherit from
// (via https://github.com/lipsmack from https://github.com/scottcorgan/tiny-emitter/issues/3)
...
...
@@ -1347,4 +1365,4 @@ function getEnvLocale() {
return
(
lang
&&
lang
.
replace
(
/
[
.:
]
.*/
,
''
))
||
'
en
'
;
}
export
{
ACTION_TYPE_ADD_EVENT
,
ACTION_TYPE_ADD_WXS_EVENT
,
ACTION_TYPE_CREATE
,
ACTION_TYPE_EVENT
,
ACTION_TYPE_INSERT
,
ACTION_TYPE_PAGE_CREATE
,
ACTION_TYPE_PAGE_CREATED
,
ACTION_TYPE_PAGE_SCROLL
,
ACTION_TYPE_REMOVE
,
ACTION_TYPE_REMOVE_ATTRIBUTE
,
ACTION_TYPE_REMOVE_EVENT
,
ACTION_TYPE_SET_ATTRIBUTE
,
ACTION_TYPE_SET_TEXT
,
ATTR_CHANGE_PREFIX
,
ATTR_CLASS
,
ATTR_INNER_HTML
,
ATTR_STYLE
,
ATTR_TEXT_CONTENT
,
ATTR_V_OWNER_ID
,
ATTR_V_RENDERJS
,
ATTR_V_SHOW
,
BACKGROUND_COLOR
,
BUILT_IN_TAGS
,
BUILT_IN_TAG_NAMES
,
COMPONENT_NAME_PREFIX
,
COMPONENT_PREFIX
,
COMPONENT_SELECTOR_PREFIX
,
DATA_RE
,
E$1
as
Emitter
,
EventChannel
,
EventModifierFlags
,
I18N_JSON_DELIMITERS
,
JSON_PROTOCOL
,
LINEFEED
,
MINI_PROGRAM_PAGE_RUNTIME_HOOKS
,
NAVBAR_HEIGHT
,
NODE_TYPE_COMMENT
,
NODE_TYPE_ELEMENT
,
NODE_TYPE_PAGE
,
NODE_TYPE_TEXT
,
NVUE_BUILT_IN_TAGS
,
NVUE_U_BUILT_IN_TAGS
,
ON_ADD_TO_FAVORITES
,
ON_APP_ENTER_BACKGROUND
,
ON_APP_ENTER_FOREGROUND
,
ON_BACK_PRESS
,
ON_ERROR
,
ON_HIDE
,
ON_KEYBOARD_HEIGHT_CHANGE
,
ON_LAUNCH
,
ON_LOAD
,
ON_NAVIGATION_BAR_BUTTON_TAP
,
ON_NAVIGATION_BAR_SEARCH_INPUT_CHANGED
,
ON_NAVIGATION_BAR_SEARCH_INPUT_CLICKED
,
ON_NAVIGATION_BAR_SEARCH_INPUT_CONFIRMED
,
ON_NAVIGATION_BAR_SEARCH_INPUT_FOCUS_CHANGED
,
ON_PAGE_NOT_FOUND
,
ON_PAGE_SCROLL
,
ON_PULL_DOWN_REFRESH
,
ON_REACH_BOTTOM
,
ON_REACH_BOTTOM_DISTANCE
,
ON_READY
,
ON_RESIZE
,
ON_SHARE_APP_MESSAGE
,
ON_SHARE_TIMELINE
,
ON_SHOW
,
ON_TAB_ITEM_TAP
,
ON_THEME_CHANGE
,
ON_UNHANDLE_REJECTION
,
ON_UNLOAD
,
ON_WEB_INVOKE_APP_SERVICE
,
ON_WXS_INVOKE_CALL_METHOD
,
PLUS_RE
,
PRIMARY_COLOR
,
RENDERJS_MODULES
,
RESPONSIVE_MIN_WIDTH
,
SCHEME_RE
,
SELECTED_COLOR
,
SLOT_DEFAULT_NAME
,
TABBAR_HEIGHT
,
TAGS
,
UNI_SSR
,
UNI_SSR_DATA
,
UNI_SSR_GLOBAL_DATA
,
UNI_SSR_STORE
,
UNI_SSR_TITLE
,
UNI_STORAGE_LOCALE
,
UniBaseNode
,
UniCommentNode
,
UniElement
,
UniEvent
,
UniInputElement
,
UniLifecycleHooks
,
UniNode
,
UniTextAreaElement
,
UniTextNode
,
WEB_INVOKE_APPSERVICE
,
WXS_MODULES
,
WXS_PROTOCOL
,
addFont
,
addLeadingSlash
,
cache
,
cacheStringFunction
,
callOptions
,
createIsCustomElement
,
createRpx2Unit
,
createUniEvent
,
customizeEvent
,
debounce
,
decode
,
decodedQuery
,
defaultMiniProgramRpx2Unit
,
defaultNVueRpx2Unit
,
defaultRpx2Unit
,
dynamicSlotName
,
forcePatchProp
,
formatAppLog
,
formatDateTime
,
formatH5Log
,
formatLog
,
getCustomDataset
,
getEnvLocale
,
getLen
,
getValueByDataPath
,
initCustomDatasetOnce
,
invokeArrayFns
,
i
sAppNVueNativeTag
,
isAppNativeTag
,
isBuiltInComponent
,
isComponentInternalInstance
,
isComponentTag
,
isH5CustomElement
,
isH5NativeTag
,
isMiniProgramNativeTag
,
isRootHook
,
normalizeDataset
,
normalizeEventType
,
normalizeTarget
,
once
,
parseEventName
,
parseQuery
,
parseUrl
,
passive
,
plusReady
,
removeLeadingSlash
,
resolveComponentInstance
,
resolveOwnerEl
,
resolveOwnerVm
,
sanitise
,
scrollTo
,
stringifyQuery
,
updateElementStyle
};
export
{
ACTION_TYPE_ADD_EVENT
,
ACTION_TYPE_ADD_WXS_EVENT
,
ACTION_TYPE_CREATE
,
ACTION_TYPE_EVENT
,
ACTION_TYPE_INSERT
,
ACTION_TYPE_PAGE_CREATE
,
ACTION_TYPE_PAGE_CREATED
,
ACTION_TYPE_PAGE_SCROLL
,
ACTION_TYPE_REMOVE
,
ACTION_TYPE_REMOVE_ATTRIBUTE
,
ACTION_TYPE_REMOVE_EVENT
,
ACTION_TYPE_SET_ATTRIBUTE
,
ACTION_TYPE_SET_TEXT
,
ATTR_CHANGE_PREFIX
,
ATTR_CLASS
,
ATTR_INNER_HTML
,
ATTR_STYLE
,
ATTR_TEXT_CONTENT
,
ATTR_V_OWNER_ID
,
ATTR_V_RENDERJS
,
ATTR_V_SHOW
,
BACKGROUND_COLOR
,
BUILT_IN_TAGS
,
BUILT_IN_TAG_NAMES
,
COMPONENT_NAME_PREFIX
,
COMPONENT_PREFIX
,
COMPONENT_SELECTOR_PREFIX
,
DATA_RE
,
E$1
as
Emitter
,
EventChannel
,
EventModifierFlags
,
I18N_JSON_DELIMITERS
,
JSON_PROTOCOL
,
LINEFEED
,
MINI_PROGRAM_PAGE_RUNTIME_HOOKS
,
NAVBAR_HEIGHT
,
NODE_TYPE_COMMENT
,
NODE_TYPE_ELEMENT
,
NODE_TYPE_PAGE
,
NODE_TYPE_TEXT
,
NVUE_BUILT_IN_TAGS
,
NVUE_U_BUILT_IN_TAGS
,
ON_ADD_TO_FAVORITES
,
ON_APP_ENTER_BACKGROUND
,
ON_APP_ENTER_FOREGROUND
,
ON_BACK_PRESS
,
ON_ERROR
,
ON_HIDE
,
ON_KEYBOARD_HEIGHT_CHANGE
,
ON_LAUNCH
,
ON_LOAD
,
ON_NAVIGATION_BAR_BUTTON_TAP
,
ON_NAVIGATION_BAR_SEARCH_INPUT_CHANGED
,
ON_NAVIGATION_BAR_SEARCH_INPUT_CLICKED
,
ON_NAVIGATION_BAR_SEARCH_INPUT_CONFIRMED
,
ON_NAVIGATION_BAR_SEARCH_INPUT_FOCUS_CHANGED
,
ON_PAGE_NOT_FOUND
,
ON_PAGE_SCROLL
,
ON_PULL_DOWN_REFRESH
,
ON_REACH_BOTTOM
,
ON_REACH_BOTTOM_DISTANCE
,
ON_READY
,
ON_RESIZE
,
ON_SHARE_APP_MESSAGE
,
ON_SHARE_TIMELINE
,
ON_SHOW
,
ON_TAB_ITEM_TAP
,
ON_THEME_CHANGE
,
ON_UNHANDLE_REJECTION
,
ON_UNLOAD
,
ON_WEB_INVOKE_APP_SERVICE
,
ON_WXS_INVOKE_CALL_METHOD
,
PLUS_RE
,
PRIMARY_COLOR
,
RENDERJS_MODULES
,
RESPONSIVE_MIN_WIDTH
,
SCHEME_RE
,
SELECTED_COLOR
,
SLOT_DEFAULT_NAME
,
TABBAR_HEIGHT
,
TAGS
,
UNI_SSR
,
UNI_SSR_DATA
,
UNI_SSR_GLOBAL_DATA
,
UNI_SSR_STORE
,
UNI_SSR_TITLE
,
UNI_STORAGE_LOCALE
,
UniBaseNode
,
UniCommentNode
,
UniElement
,
UniEvent
,
UniInputElement
,
UniLifecycleHooks
,
UniNode
,
UniTextAreaElement
,
UniTextNode
,
WEB_INVOKE_APPSERVICE
,
WXS_MODULES
,
WXS_PROTOCOL
,
addFont
,
addLeadingSlash
,
cache
,
cacheStringFunction
,
callOptions
,
createIsCustomElement
,
createRpx2Unit
,
createUniEvent
,
customizeEvent
,
debounce
,
decode
,
decodedQuery
,
defaultMiniProgramRpx2Unit
,
defaultNVueRpx2Unit
,
defaultRpx2Unit
,
dynamicSlotName
,
forcePatchProp
,
formatAppLog
,
formatDateTime
,
formatH5Log
,
formatLog
,
getCustomDataset
,
getEnvLocale
,
getLen
,
getValueByDataPath
,
initCustomDatasetOnce
,
invokeArrayFns
,
i
nvokeCreateVueAppHook
,
isAppNVueNativeTag
,
isAppNativeTag
,
isBuiltInComponent
,
isComponentInternalInstance
,
isComponentTag
,
isH5CustomElement
,
isH5NativeTag
,
isMiniProgramNativeTag
,
isRootHook
,
normalizeDataset
,
normalizeEventType
,
normalizeTarget
,
onCreateVueApp
,
once
,
parseEventName
,
parseQuery
,
parseUrl
,
passive
,
plusReady
,
removeLeadingSlash
,
resolveComponentInstance
,
resolveOwnerEl
,
resolveOwnerVm
,
sanitise
,
scrollTo
,
stringifyQuery
,
updateElementStyle
};
packages/uni-shared/src/index.ts
浏览文件 @
357d19ea
...
...
@@ -13,6 +13,7 @@ export * from './debounce'
export
*
from
'
./constants
'
export
*
from
'
./EventChannel
'
export
*
from
'
./lifecycle
'
export
*
from
'
./onCreateVueApp
'
export
{
default
as
Emitter
}
from
'
./TinyEmitter
'
export
*
from
'
./node/locale
'
packages/uni-
vue
/src/onCreateVueApp.ts
→
packages/uni-
shared
/src/onCreateVueApp.ts
浏览文件 @
357d19ea
文件已移动
packages/uni-vue/src/index.ts
浏览文件 @
357d19ea
import
{
App
}
from
'
vue
'
import
{
isFunction
}
from
'
@vue/shared
'
import
{
invokeCreateVueAppHook
}
from
'
@dcloudio/uni-shared
'
import
{
applyOptions
}
from
'
./componentOptions
'
import
{
set
}
from
'
./componentInstance
'
import
{
errorHandler
,
initOptionMergeStrategies
}
from
'
./appConfig
'
import
{
uniIdMixin
}
from
'
./uni-id-mixin
'
import
{
invokeCreateVueAppHook
}
from
'
./onCreateVueApp
'
export
{
onCreateVueApp
,
invokeCreateVueAppHook
}
from
'
./onCreateVueApp
'
export
function
initApp
(
app
:
App
)
{
const
appConfig
=
app
.
_context
.
config
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录