king
2024-10-28 ba4d6e414fbb37121e80815d3f5ab1aca7a60b08
src/menu/components/share/sourcecomponent/inputform/index.jsx
@@ -36,7 +36,7 @@
  UNSAFE_componentWillMount () {
    if (this.props.keyword === 'system') {
      this.init()
      this.preInit()
    }
  }
@@ -54,26 +54,40 @@
    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)
@@ -136,11 +150,11 @@
      }).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 {
@@ -160,7 +174,7 @@
    
    return (
      <div className="mk-source-pop-wrap">
        {keyword === 'input' ? <Form.Item label="地址" labelCol={{xs: { span: 24 }, sm: { span: 4 }}} wrapperCol={{xs: { span: 24 }, sm: { span: 20 }}}>
        {keyword === 'input' ? <Form.Item label="地址" help="可使用@mywebsite@代替域名(含虚拟目录),如:@mywebsite@/Content/images/xxx.jpg" labelCol={{xs: { span: 24 }, sm: { span: 4 }}} wrapperCol={{xs: { span: 24 }, sm: { span: 20 }}}>
          <TextArea id="source-input" value={url} rows={4} onChange={this.changeValue}/>
        </Form.Item> : null}
        {keyword === 'upload' ? <Form.Item label="上传" labelCol={{xs: { span: 24 }, sm: { span: 4 }}} wrapperCol={{xs: { span: 24 }, sm: { span: 20 }}}>