Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
wzj-java
uni-app
提交
0a7e2732
U
uni-app
项目概览
wzj-java
/
uni-app
与 Fork 源项目一致
Fork自
DCloud / uni-app
通知
1
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
1
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
U
uni-app
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
1
Issue
1
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
0a7e2732
编写于
11月 21, 2019
作者:
fxy060608
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fix(v3): nextTick bind vm context
上级
0b1f3d7b
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
47 addition
and
76 deletion
+47
-76
packages/uni-app-plus/dist/index.v3.js
packages/uni-app-plus/dist/index.v3.js
+46
-75
src/platforms/app-plus/service/framework/plugins/index.js
src/platforms/app-plus/service/framework/plugins/index.js
+1
-1
未找到文件。
packages/uni-app-plus/dist/index.v3.js
浏览文件 @
0a7e2732
...
...
@@ -4142,53 +4142,39 @@ var serviceContext = (function () {
});
let
plus_
;
let
weex_
;
let
uni_
;
let
runtime
;
let
BroadcastChannel_
;
function
getRuntime
()
{
return
runtime
||
(
runtime
=
typeof
window
===
'
object
'
&&
typeof
navigator
===
'
object
'
&&
typeof
document
===
'
object
'
?
'
webview
'
:
'
v8
'
)
}
function
setRuntime
(
value
)
{
runtime
=
value
;
return
typeof
window
===
'
object
'
&&
typeof
navigator
===
'
object
'
&&
typeof
document
===
'
object
'
?
'
webview
'
:
'
v8
'
}
function
getPageId
()
{
return
plus_
.
webview
.
currentWebview
().
id
}
let
initedEventListener
=
false
;
let
channel
;
const
callbacks$1
=
{};
function
addEventListener
(
pageId
,
callback
)
{
const
runtime
=
getRuntime
();
function
onPlusMessage
(
res
)
{
const
message
=
res
.
data
&&
res
.
data
.
__message
;
if
(
!
message
||
!
message
.
__page
)
{
return
}
const
pageId
=
message
.
__page
;
const
callback
=
callbacks$1
[
pageId
];
callback
&&
callback
(
message
);
if
(
!
message
.
keep
)
{
delete
callbacks$1
[
pageId
];
}
function
onPlusMessage
(
res
)
{
const
message
=
res
.
data
&&
res
.
data
.
__message
;
if
(
!
message
||
!
message
.
__page
)
{
return
}
if
(
!
initedEventListener
)
{
if
(
runtime
===
'
v8
'
)
{
const
globalEvent
=
weex_
.
requireModule
(
'
globalEvent
'
);
globalEvent
.
addEventListener
(
'
plusMessage
'
,
onPlusMessage
);
}
else
if
(
runtime
===
'
v8-native
'
)
{
uni_
.
$on
(
getPageId
(),
onPlusMessage
);
}
else
{
window
.
__plusMessage
=
onPlusMessage
;
}
initedEventListener
=
true
;
const
pageId
=
message
.
__page
;
const
callback
=
callbacks$1
[
pageId
];
callback
&&
callback
(
message
);
if
(
!
message
.
keep
)
{
delete
callbacks$1
[
pageId
];
}
}
function
addEventListener
(
pageId
,
callback
)
{
if
(
getRuntime
()
===
'
v8
'
)
{
channel
&&
channel
.
close
();
channel
=
new
BroadcastChannel_
(
getPageId
());
channel
.
onmessage
=
onPlusMessage
;
}
else
{
window
.
__plusMessage
=
onPlusMessage
;
}
callbacks$1
[
pageId
]
=
callback
;
}
...
...
@@ -4198,19 +4184,13 @@ var serviceContext = (function () {
this
.
webview
=
webview
;
}
sendMessage
(
data
)
{
const
runtime
=
getRuntime
();
const
message
=
{
__message
:
{
data
}
};
if
(
runtime
===
'
v8-native
'
)
{
uni_
.
$emit
(
this
.
webview
.
id
,
{
data
:
JSON
.
parse
(
JSON
.
stringify
(
message
))
});
}
else
{
plus_
.
webview
.
postMessageToUniNView
(
message
,
this
.
webview
.
id
);
}
const
channel
=
new
BroadcastChannel_
(
this
.
webview
.
id
);
channel
.
postMessage
(
message
);
}
close
()
{
this
.
webview
.
close
();
...
...
@@ -4218,31 +4198,17 @@ var serviceContext = (function () {
}
function
showPage
({
context
,
runtime
,
context
=
{},
url
,
data
=
{},
style
=
{},
onMessage
,
onClose
})
{
if
(
context
)
{
plus_
=
context
.
plus
;
weex_
=
context
.
weex
;
uni_
=
context
.
uni
;
}
else
{
// eslint-disable-next-line
plus_
=
typeof
plus
===
'
object
'
?
plus
:
null
;
// eslint-disable-next-line
weex_
=
typeof
weex
===
'
object
'
?
weex
:
null
;
// eslint-disable-next-line
uni_
=
typeof
uni
===
'
object
'
?
uni
:
null
;
}
if
(
runtime
)
{
setRuntime
(
runtime
);
}
else
{
runtime
=
getRuntime
();
}
// eslint-disable-next-line
plus_
=
context
.
plus
||
plus
;
// eslint-disable-next-line
BroadcastChannel_
=
context
.
BroadcastChannel
||
BroadcastChannel
;
const
titleNView
=
{
autoBackButton
:
true
,
titleSize
:
'
17px
'
...
...
@@ -4261,7 +4227,7 @@ var serviceContext = (function () {
animationType
:
'
pop-in
'
,
animationDuration
:
200
,
uniNView
:
{
path
:
`
${(
typeof
process
===
'
object
'
&&
process
.
env
&&
process
.
env
.
VUE_APP_TEMPLATE_PATH
)
||
''
}
/
${
url
}
.js`
,
path
:
`
${(
typeof
process
===
'
object
'
&&
process
.
env
&&
process
.
env
.
VUE_APP_TEMPLATE_PATH
)
||
'
/template
'
}
/
${
url
}
.js`
,
defaultFontSize
:
plus_
.
screen
.
resolutionWidth
/
20
,
viewport
:
plus_
.
screen
.
resolutionWidth
}
...
...
@@ -4270,7 +4236,7 @@ var serviceContext = (function () {
const
page
=
plus_
.
webview
.
create
(
''
,
pageId
,
style
,
{
extras
:
{
from
:
getPageId
(),
runtime
:
runtime
,
runtime
:
getRuntime
()
,
data
}
});
...
...
@@ -11498,15 +11464,20 @@ var serviceContext = (function () {
});
});
plus
.
globalEvent
.
addEventListener
(
'
plusMessage
'
,
function
(
e
)
{
if
(
process
.
env
.
NODE_ENV
!==
'
production
'
)
{
console
.
log
(
'
[plusMessage]:[
'
+
Date
.
now
()
+
'
]
'
+
JSON
.
stringify
(
e
.
data
));
}
if
(
e
.
data
&&
e
.
data
.
type
)
{
const
type
=
e
.
data
.
type
;
consumePlusMessage
(
type
,
e
.
data
.
args
||
{});
}
});
plus
.
globalEvent
.
addEventListener
(
'
plusMessage
'
,
onPlusMessage$1
);
// nvue webview post message
plus
.
globalEvent
.
addEventListener
(
'
WebviewPostMessage
'
,
onPlusMessage$1
);
}
function
onPlusMessage$1
(
e
)
{
if
(
process
.
env
.
NODE_ENV
!==
'
production
'
)
{
console
.
log
(
'
[plusMessage]:[
'
+
Date
.
now
()
+
'
]
'
+
JSON
.
stringify
(
e
.
data
));
}
if
(
e
.
data
&&
e
.
data
.
type
)
{
const
type
=
e
.
data
.
type
;
consumePlusMessage
(
type
,
e
.
data
.
args
||
{});
}
}
function
initAppLaunch
(
appVm
)
{
...
...
@@ -12234,7 +12205,7 @@ var serviceContext = (function () {
renderWatcher
&&
this
.
_$queue
.
find
(
watcher
=>
renderWatcher
===
watcher
)
)
{
vdSyncCallbacks
.
push
(
cb
);
vdSyncCallbacks
.
push
(
cb
.
bind
(
this
)
);
}
else
{
// $nextTick bind vm context
Vue
.
nextTick
(()
=>
{
...
...
src/platforms/app-plus/service/framework/plugins/index.js
浏览文件 @
0a7e2732
...
...
@@ -52,7 +52,7 @@ export default {
renderWatcher
&&
this
.
_$queue
.
find
(
watcher
=>
renderWatcher
===
watcher
)
)
{
vdSyncCallbacks
.
push
(
cb
)
vdSyncCallbacks
.
push
(
cb
.
bind
(
this
)
)
}
else
{
// $nextTick bind vm context
Vue
.
nextTick
(()
=>
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录