|
@@ -5,6 +5,7 @@ import {
|
|
|
defineComponent,
|
|
|
nextTick,
|
|
|
onMounted,
|
|
|
+ onUnmounted,
|
|
|
reactive,
|
|
|
ref
|
|
|
} from 'vue';
|
|
@@ -70,7 +71,8 @@ export default defineComponent({
|
|
|
showPlayer: false,
|
|
|
previewModal: false,
|
|
|
showPreivew: false,
|
|
|
- previewUrl: ''
|
|
|
+ previewUrl: '',
|
|
|
+ showCloseBtn: true
|
|
|
});
|
|
|
const showGuide = ref(false);
|
|
|
const userStore = useUserStore();
|
|
@@ -126,6 +128,13 @@ export default defineComponent({
|
|
|
getList();
|
|
|
};
|
|
|
|
|
|
+ // ifram事件处理
|
|
|
+ const iframeHandle = (ev: MessageEvent) => {
|
|
|
+ if (ev.data?.api === 'api_fingerPreView'){
|
|
|
+ data.showCloseBtn = !ev.data.state
|
|
|
+ }
|
|
|
+ };
|
|
|
+
|
|
|
onMounted(async () => {
|
|
|
getSubjects();
|
|
|
await getList();
|
|
@@ -137,7 +146,11 @@ export default defineComponent({
|
|
|
nextTick(() => {
|
|
|
obv.observe(spinRef.value);
|
|
|
});
|
|
|
+ window.addEventListener('message', iframeHandle);
|
|
|
});
|
|
|
+ onUnmounted(() => {
|
|
|
+ window.removeEventListener('message', iframeHandle);
|
|
|
+ })
|
|
|
/** 查看收藏状态 */
|
|
|
const getFavitor = async (item: any) => {
|
|
|
const res = await api_materialFavoriteStatus({
|
|
@@ -463,6 +476,7 @@ export default defineComponent({
|
|
|
displayDirective="show">
|
|
|
<NSpin show={data.showPreivew} style="--n-opacity-spinning: 1;">
|
|
|
<img
|
|
|
+ style={{display: data.showCloseBtn ? '' : 'none'}}
|
|
|
src={icon_close}
|
|
|
class={styles.previewClose}
|
|
|
onClick={() => {
|