| | |
| | | |
| | | UNSAFE_componentWillMount () { |
| | | if (this.props.keyword === 'system') { |
| | | this.init() |
| | | this.preInit() |
| | | } |
| | | } |
| | | |
| | |
| | | return !is(fromJS(this.state), fromJS(nextState)) |
| | | } |
| | | |
| | | init = () => { |
| | | preInit = () => { |
| | | const { type } = this.props |
| | | |
| | | let originlist = [] |
| | | if (type === 'video') { |
| | | let videos = sessionStorage.getItem('app_videos') |
| | | try { |
| | | originlist = JSON.parse(videos) |
| | | } catch (e) { |
| | | originlist = [] |
| | | } |
| | | } else { |
| | | let pictures = sessionStorage.getItem('app_pictures') |
| | | try { |
| | | originlist = JSON.parse(pictures) |
| | | } catch (e) { |
| | | originlist = [] |
| | | } |
| | | } |
| | | let _type = type === 'video' ? 'video' : 'image' |
| | | let _sname = type === 'video' ? 'app_videos' : 'app_pictures' |
| | | |
| | | this.getSource(_type, _sname).then(res => { |
| | | this.init(res) |
| | | }) |
| | | } |
| | | |
| | | getSource = (type, sessionName) => { |
| | | return new Promise(resolve => { |
| | | if (window.GLOB[sessionName]) { |
| | | resolve(window.GLOB[sessionName]) |
| | | } else { |
| | | let param = { |
| | | func: 's_url_db_adduptdel', |
| | | PageIndex: 0, // 0 代表全部 |
| | | PageSize: 0, // 0 代表全部 |
| | | type: 'search', |
| | | typecharone: type |
| | | } |
| | | Api.getCloudConfig(param).then(res => { |
| | | let data = res.data || [] |
| | | window.GLOB[sessionName] = data |
| | | |
| | | resolve(data) |
| | | }) |
| | | } |
| | | }) |
| | | } |
| | | |
| | | init = (originlist) => { |
| | | let list = originlist |
| | | let pagelist = list.filter((item, index) => index < this.state.pageSize) |
| | | |
| | |
| | | }).then(result => { |
| | | if (result.status) { |
| | | if (card.typecharone === 'image') { |
| | | sessionStorage.setItem('app_pictures', JSON.stringify(result.data || [])) |
| | | this.init() |
| | | window.GLOB.app_pictures = result.data || [] |
| | | this.init(result.data || []) |
| | | } else { |
| | | sessionStorage.setItem('app_videos', JSON.stringify(result.data || [])) |
| | | this.init() |
| | | window.GLOB.app_videos = result.data || [] |
| | | this.init(result.data || []) |
| | | } |
| | | this.setState({editvisible: false}) |
| | | } else { |