Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
B
basic-vue-admin
概览
概览
详情
活动
周期分析
版本库
存储库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
Basic
basic-vue-admin
Commits
d76cfd7f
Unverified
提交
d76cfd7f
authored
8月 01, 2021
作者:
yanzhuang
提交者:
GitHub
8月 01, 2021
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fix: fix iframe heigth error (#1012)
上级
2fd0fd28
隐藏空白字符变更
内嵌
并排
正在显示
1 个修改的文件
包含
14 行增加
和
30 行删除
+14
-30
index.vue
src/views/sys/iframe/index.vue
+14
-30
没有找到文件。
src/views/sys/iframe/index.vue
浏览文件 @
d76cfd7f
<
template
>
<div
:class=
"prefixCls"
:style=
"getWrapStyle"
>
<Spin
:spinning=
"loading"
size=
"large"
:style=
"getWrapStyle"
>
<iframe
:src=
"frameSrc"
:class=
"`$
{prefixCls}__main`" ref="frameRef">
</iframe>
<iframe
:src=
"frameSrc"
:class=
"`$
{prefixCls}__main`"
ref="frameRef"
@load="hideLoading"
>
</iframe>
</Spin>
</div>
</
template
>
<
script
lang=
"ts"
>
import
type
{
CSSProperties
}
from
'vue'
;
import
{
defineComponent
,
ref
,
unref
,
onMounted
,
nextTick
,
computed
}
from
'vue'
;
import
{
defineComponent
,
ref
,
unref
,
computed
}
from
'vue'
;
import
{
Spin
}
from
'ant-design-vue'
;
import
{
getViewportOffset
}
from
'/@/utils/domUtils'
;
import
{
useWindowSizeFn
}
from
'/@/hooks/event/useWindowSizeFn'
;
import
{
propTypes
}
from
'/@/utils/propTypes'
;
import
{
useDesign
}
from
'/@/hooks/web/useDesign'
;
import
{
useLayoutHeight
}
from
'/@/layouts/default/content/useContentViewHeight'
;
export
default
defineComponent
({
name
:
'IFrame'
,
...
...
@@ -24,10 +28,11 @@
frameSrc
:
propTypes
.
string
.
def
(
''
),
},
setup
()
{
const
loading
=
ref
(
fals
e
);
const
loading
=
ref
(
tru
e
);
const
topRef
=
ref
(
50
);
const
heightRef
=
ref
(
window
.
innerHeight
);
const
frameRef
=
ref
<
HTMLFrameElement
|
null
>
(
null
);
const
frameRef
=
ref
<
HTMLFrameElement
>
();
const
{
headerHeightRef
}
=
useLayoutHeight
();
const
{
prefixCls
}
=
useDesign
(
'iframe-page'
);
useWindowSizeFn
(
calcHeight
,
150
,
{
immediate
:
true
});
...
...
@@ -43,8 +48,7 @@
if
(
!
iframe
)
{
return
;
}
let
{
top
}
=
getViewportOffset
(
iframe
);
top
+=
20
;
const
top
=
headerHeightRef
.
value
;
topRef
.
value
=
top
;
heightRef
.
value
=
window
.
innerHeight
-
top
;
const
clientHeight
=
document
.
documentElement
.
clientHeight
-
top
;
...
...
@@ -56,33 +60,13 @@
calcHeight
();
}
function
init
()
{
nextTick
(()
=>
{
const
iframe
=
unref
(
frameRef
);
if
(
!
iframe
)
return
;
const
_frame
=
iframe
as
any
;
if
(
_frame
.
attachEvent
)
{
_frame
.
attachEvent
(
'onload'
,
()
=>
{
hideLoading
();
});
}
else
{
iframe
.
onload
=
()
=>
{
hideLoading
();
};
}
});
}
onMounted
(()
=>
{
loading
.
value
=
true
;
init
();
});
return
{
getWrapStyle
,
loading
,
frameRef
,
prefixCls
,
hideLoading
,
};
},
});
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论