import React, {Component} from 'react'
|
|
import asyncComponent from '@/utils/asyncComponent'
|
import Header from '@/components/header'
|
import MKEmitter from '@/utils/events.js'
|
import Sidemenu from '@/components/sidemenu'
|
import QueryLog from '@/components/querylog'
|
import ImgScale from '@/components/imgScale'
|
|
// import './index.scss'
|
|
const Tabview = asyncComponent(() => import('@/components/tabview'))
|
const Breadview = asyncComponent(() => import('@/components/breadview'))
|
|
class Main extends Component {
|
state = {
|
userId: sessionStorage.getItem('UserID')
|
}
|
|
UNSAFE_componentWillMount() {
|
if (!this.state.userId) {
|
this.props.history.replace('/login')
|
}
|
}
|
|
componentDidMount () {
|
MKEmitter.addListener('resetSelectLine', this.resetParentParam)
|
|
if (window.GLOB.sysType !== 'cloud') {
|
Object.defineProperty(window, 'debugger', {
|
configurable: true,
|
enumerable: true,
|
set(value) {
|
if (value + '' === 'false') {
|
window.GLOB.debugger = false
|
} else {
|
window.GLOB.debugger = true
|
}
|
}
|
})
|
|
Object.defineProperty(window, 'debug', {
|
configurable: true,
|
enumerable: true,
|
set(value) {
|
if (value + '' === 'false') {
|
window.GLOB.debugger = false
|
window.GLOB.breakpoint = false
|
sessionStorage.removeItem('breakpoint')
|
} else {
|
window.GLOB.debugger = true
|
window.GLOB.breakpoint = value + ''
|
sessionStorage.setItem('breakpoint', value)
|
}
|
MKEmitter.emit('debugChange')
|
}
|
})
|
}
|
}
|
|
componentWillUnmount () {
|
MKEmitter.removeListener('resetSelectLine', this.resetParentParam)
|
}
|
|
resetParentParam = (MenuID, id, data) => {
|
window.GLOB.CacheData.set(MenuID, {...data, $BID: id})
|
}
|
|
render () {
|
const navBar = window.GLOB.navBar
|
|
if (!this.state.userId) return null
|
|
return (
|
<div className="mk-main-view">
|
<Header key="header"/>
|
{navBar === 'shutter' ? <Sidemenu key="sidemenu"/> : null}
|
{navBar === 'shutter' || navBar === 'menu_board_navigation' ?
|
<Tabview key="tabview"/> :
|
<Breadview key="breadview"/>}
|
{window.GLOB.systemType === 'production' ? <QueryLog /> : null}
|
<ImgScale />
|
</div>
|
)
|
}
|
}
|
|
export default Main
|