2017-07-26 16:25:34 +08:00
|
|
|
import '../AddInterface.scss'
|
|
|
|
import React, { Component } from 'react'
|
|
|
|
import { Button, message } from 'antd'
|
|
|
|
import Clipboard from 'clipboard'
|
|
|
|
import PropTypes from 'prop-types'
|
|
|
|
|
|
|
|
const success = () => {
|
|
|
|
message.success('复制成功!')
|
|
|
|
}
|
|
|
|
|
|
|
|
class MockUrl extends Component {
|
|
|
|
static propTypes = {
|
2017-07-27 20:35:19 +08:00
|
|
|
mockURL: PropTypes.string,
|
2017-07-28 10:29:20 +08:00
|
|
|
serverIp: PropTypes.string,
|
|
|
|
mockData: PropTypes.string,
|
2017-07-28 12:06:11 +08:00
|
|
|
showMock: PropTypes.string,
|
2017-07-28 10:29:20 +08:00
|
|
|
projectData: PropTypes.object
|
2017-07-26 16:25:34 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
constructor(props) {
|
|
|
|
super(props)
|
|
|
|
}
|
|
|
|
|
|
|
|
componentDidMount () {
|
|
|
|
setTimeout(this.clipboard, 500)
|
|
|
|
}
|
|
|
|
|
|
|
|
clipboard () {
|
|
|
|
const btn = document.querySelector('#mock-clipboard')
|
|
|
|
const txt = document.querySelector('#mock-p').innerHTML
|
2017-07-26 19:07:29 +08:00
|
|
|
|
2017-07-26 16:25:34 +08:00
|
|
|
new Clipboard(btn, {
|
|
|
|
text: () => txt,
|
|
|
|
target () {
|
|
|
|
success()
|
|
|
|
}
|
|
|
|
})
|
|
|
|
}
|
|
|
|
|
|
|
|
render () {
|
2017-07-28 12:06:11 +08:00
|
|
|
const { serverIp, showMock } = this.props
|
2017-07-26 16:25:34 +08:00
|
|
|
return (
|
2017-07-28 12:06:11 +08:00
|
|
|
<section className={`mock-url-box ${showMock}`}>
|
2017-07-27 21:10:22 +08:00
|
|
|
<span className="title">mock地址 : </span>
|
2017-07-26 16:25:34 +08:00
|
|
|
<p id="mock-p">{this.props.mockURL}</p>
|
|
|
|
<Button type="primary" id="mock-clipboard">复制</Button>
|
2017-07-28 10:29:20 +08:00
|
|
|
<div className="host"><label>请配置host:</label> {this.props.projectData.prd_host} { serverIp }</div>
|
2017-07-26 16:25:34 +08:00
|
|
|
</section>
|
|
|
|
)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2017-07-28 12:06:11 +08:00
|
|
|
export default MockUrl
|