Files
income_payments_client/src/App.vue
T

73 lines
2.0 KiB
Vue

<template>
<a-config-provider :locale="locale">
<div id="app">
<router-view></router-view>
</div>
</a-config-provider>
</template>
<script>
import zhCN from 'ant-design-vue/lib/locale-provider/zh_CN'
import enquireScreen from '@/utils/device'
window.addEventListener('message', function (event) {
// 当监听到 需要修改样式的事件时 隐藏相应的元素
if (event.data.hideDom) {
//此处执行事件
setTimeout(() => {
document.getElementsByClassName('ant-layout-sider')[0].style.display = 'none'
document.getElementsByClassName('ant-layout-header')[0].style.display = 'none'
document.getElementsByClassName('tab-layout-tabs ant-tabs ant-tabs-top')[0].style.display = 'none'
}, 1000)
}
})
document.onkeydown = keyDown
function keyDown(e) {
// 拦截backspace按钮,谷歌浏览器不需要拦截
// 拦截仍然存在的问题:当input、textarea失去焦点后,仍然会后退页面
if (e.keyCode === 8 && navigator.userAgent.indexOf('AppleWebKit') === -1 ) {
// 判断是不是在input或textarea触发backspace按钮事件
if (window.event.srcElement.tagName.toUpperCase() === 'INPUT' || window.event.srcElement.tagName.toUpperCase() === 'TEXTAREA') {
// 判断输入框中是否还有值可删除
if (window.event.srcElement.value.length === 1) {
// 拦截事件
e.keyCode=0
e.returnValue=false
}
}
}
}
export default {
data() {
return {
locale: zhCN
}
},
created() {
let that = this
enquireScreen(deviceType => {
// tablet
if (deviceType === 0) {
that.$store.commit('TOGGLE_DEVICE', 'mobile')
that.$store.dispatch('setSidebar', false)
}
// mobile
else if (deviceType === 1) {
that.$store.commit('TOGGLE_DEVICE', 'mobile')
that.$store.dispatch('setSidebar', false)
} else {
that.$store.commit('TOGGLE_DEVICE', 'desktop')
that.$store.dispatch('setSidebar', true)
}
})
}
}
</script>
<style>
#app {
height: 100%;
}
</style>