Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
良好的行为成为习惯
uni-app
提交
de7fc194
U
uni-app
项目概览
良好的行为成为习惯
/
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,发现更多精彩内容 >>
提交
de7fc194
编写于
11月 28, 2019
作者:
fxy060608
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
feat(v3): css var(--window-top,--window-bottom,--status-bar-height)
上级
31f0cbdc
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
38 addition
and
7 deletion
+38
-7
packages/vue-cli-plugin-uni/packages/app-vue-style-loader/lib/addStylesClient.js
...-uni/packages/app-vue-style-loader/lib/addStylesClient.js
+10
-6
src/platforms/app-plus/service/framework/plugins/lifecycle.js
...platforms/app-plus/service/framework/plugins/lifecycle.js
+3
-1
src/platforms/app-plus/view/bridge/subscribe/index.js
src/platforms/app-plus/view/bridge/subscribe/index.js
+25
-0
未找到文件。
packages/vue-cli-plugin-uni/packages/app-vue-style-loader/lib/addStylesClient.js
浏览文件 @
de7fc194
...
...
@@ -226,13 +226,17 @@ var UPX_RE = /([+-]?\d+(\.\d+)?)[r|u]px/g
var
VAR_STATUS_BAR_HEIGHT
=
/var
\(
--status-bar-height
\)
/gi
var
VAR_WINDOW_TOP
=
/var
\(
--window-top
\)
/gi
var
VAR_WINDOW_BOTTOM
=
/var
\(
--window-bottom
\)
/gi
var
statusBarHeight
=
false
function
processCss
(
css
)
{
if
(
!
uni
.
canIUse
(
'
css.var
'
))
{
//不支持 css 变量
if
(
!
uni
.
canIUse
(
'
css.var
'
))
{
//不支持 css 变量
if
(
statusBarHeight
===
false
)
{
statusBarHeight
=
plus
.
navigator
.
getStatusbarHeight
()
}
var
offset
=
{
statusBarHeight
:
plus
.
navigator
.
getStatusbarHeight
()
,
top
:
0
,
bottom
:
0
statusBarHeight
:
statusBarHeight
,
top
:
window
.
__WINDOW_TOP
||
0
,
bottom
:
window
.
__WINDOW_BOTTOM
||
0
}
css
=
css
.
replace
(
VAR_STATUS_BAR_HEIGHT
,
offset
.
statusBarHeight
+
'
px
'
)
.
replace
(
VAR_WINDOW_TOP
,
offset
.
top
+
'
px
'
)
...
...
@@ -242,4 +246,4 @@ function processCss(css) {
.
replace
(
UPX_RE
,
function
(
a
,
b
)
{
return
uni
.
upx2px
(
b
)
+
'
px
'
})
}
\ No newline at end of file
}
src/platforms/app-plus/service/framework/plugins/lifecycle.js
浏览文件 @
de7fc194
...
...
@@ -37,7 +37,9 @@ function parsePageCreateOptions (vm, route) {
disableScroll
,
onPageScroll
,
onPageReachBottom
,
onReachBottomDistance
onReachBottomDistance
,
windowTop
:
0
,
// TODO
windowBottom
:
0
// TODO
}
}
...
...
src/platforms/app-plus/view/bridge/subscribe/index.js
浏览文件 @
de7fc194
...
...
@@ -19,12 +19,37 @@ const passiveOptions = supportsPassive ? {
passive
:
false
}
:
false
function
onCssVar
({
windowTop
,
windowBottom
})
{
global
.
__WINDOW_TOP
=
windowTop
global
.
__WINDOW_BOTTOM
=
windowBottom
if
(
uni
.
canIUse
(
'
css.var
'
))
{
const
style
=
document
.
documentElement
.
style
style
.
setProperty
(
'
--window-top
'
,
windowTop
+
'
px
'
)
style
.
setProperty
(
'
--window-bottom
'
,
windowBottom
+
'
px
'
)
style
.
setProperty
(
'
--status-bar-height
'
,
plus
.
navigator
.
getStatusbarHeight
()
+
'
px
'
)
if
(
process
.
env
.
NODE_ENV
!==
'
production
'
)
{
console
.
log
(
`--window-top=
${
windowTop
}
`
)
console
.
log
(
`--window-bottom=
${
windowBottom
}
`
)
}
}
}
function
onPageCreate
({
windowTop
,
windowBottom
,
disableScroll
,
onPageScroll
,
onPageReachBottom
,
onReachBottomDistance
},
pageId
)
{
onCssVar
({
windowTop
,
windowBottom
})
if
(
disableScroll
)
{
document
.
addEventListener
(
'
touchmove
'
,
disableScrollListener
,
passiveOptions
)
}
else
if
(
onPageScroll
||
onPageReachBottom
)
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录