export default { name: 'JSelectBizQueryItem', props: { queryParam: Object, queryConfig: Array, }, data() { return {} }, methods: { renderQueryItem() { return this.queryConfig.map(queryItem => { const {key, label, placeholder, dictCode, props, customRender} = queryItem const options = { props: {}, on: { pressEnter: () => this.$emit('pressEnter'), } } if (props != null) { Object.assign(options.props, props) } if (placeholder === undefined) { if (dictCode) { options.props['placeholder'] = `请选择${label}` } else { options.props['placeholder'] = `请输入${label}` } } else { options.props['placeholder'] = placeholder } let input if (typeof customRender === 'function') { input = customRender.call(this, {key, options, queryParam: this.queryParam}) } else if (dictCode) { input = <j-dict-select-tag {...options} vModel={this.queryParam[key]} dictCode={dictCode} style="width:180px;"/> } else { input = <a-input {...options} vModel={this.queryParam[key]}/> } return <a-form-item key={key} label={label}>{input}</a-form-item> }) }, }, render() { return <span>{this.renderQueryItem()}</span> }, }