pull/83/head
Bosn 7 years ago
parent a044af1e5b
commit 6f5bd3f05e

@ -24,7 +24,7 @@ export const ResponsePropertyListPreviewer = (props) => (
// TODO 2.3
class SortableTreeTableHeader extends Component {
render () {
render() {
let { editable } = this.props
return (
<div className='SortableTreeTableHeader'>
@ -32,6 +32,7 @@ class SortableTreeTableHeader extends Component {
{/* DONE 2.1 每列增加帮助 Tip */}
{editable && <div className='th operations' />}
<div className='th name'>名称</div>
<div className='th type'>必选</div>
<div className='th type'>类型</div>
{/* TODO 2.3 规则编辑器 */}
<div className='th rule'>
@ -58,7 +59,7 @@ const PropertyLabel = (props) => {
}
class SortableTreeTableRow extends Component {
render () {
render() {
let { property, editable } = this.props
let { handleClickCreateChildPropertyButton, handleDeleteMemoryProperty, handleChangePropertyField, handleSortProperties } = this.props
return (
@ -81,6 +82,13 @@ class SortableTreeTableRow extends Component {
: <input value={item.name} onChange={e => handleChangePropertyField(item.id, 'name', e.target.value)} className='form-control editable' spellCheck='false' placeholder='' />
}
</div>
<div className={`td payload type depth-${item.depth} nowrap`}>
{!editable
? <span className='nowrap'>{item.required ? '✔️' : ''}</span>
: <input type='checkbox' checked={!!item.required} onChange={e => handleChangePropertyField(item.id, 'required', e.target.checked)} />
}
</div>
<div className='td payload type'>
{!editable
? <span className='nowrap'>{item.type}</span>
@ -110,7 +118,7 @@ class SortableTreeTableRow extends Component {
}
</div>
</div>
{item.children && item.children.length ? <SortableTreeTableRow {...this.props} property={item} /> : null }
{item.children && item.children.length ? <SortableTreeTableRow {...this.props} property={item} /> : null}
</div>
)}
</div>
@ -120,7 +128,7 @@ class SortableTreeTableRow extends Component {
}
class SortableTreeTable extends Component {
render () {
render() {
let { root, editable } = this.props
return (
<div className={`SortableTreeTable ${editable ? 'editable' : ''}`}>
@ -153,7 +161,7 @@ class PropertyList extends Component {
bodyOption: PropTypes.string,
requestParamsType: PropTypes.string
}
constructor (props) {
constructor(props) {
super(props)
this.state = {
createProperty: false,
@ -162,7 +170,7 @@ class PropertyList extends Component {
importer: false
}
}
render () {
render() {
let { title, label, scope, properties = [], repository = {}, mod = {}, itf = {} } = this.props
if (!itf.id) return null
let { editable, requestParamsType } = this.props // itf.locker && (itf.locker.id === auth.id)

@ -33,7 +33,7 @@ const treeToJson = (tree) => {
const parse = (item, result) => {
let rule = item.rule ? ('|' + item.rule) : ''
let value = item.value
if (value[0] === '[' || value.indexOf('function(') === 0) {
if (typeof value === 'string' && (value[0] === '[' || value.indexOf('function(') === 0)) {
value = tryToCalculateValue(value)
}
switch (item.type) {

@ -4,4 +4,4 @@ module.exports = {
session: {
key: 'koa:sess'
}
}
}
Loading…
Cancel
Save