aboutsummaryrefslogtreecommitdiff
path: root/frontend/src/components/PasteArea.js
diff options
context:
space:
mode:
authorRyan Mehri <[email protected]>2020-05-10 10:06:17 -0600
committerGitHub <[email protected]>2020-05-10 10:06:17 -0600
commitb63c59506439652354d2ae93796732039156dc32 (patch)
treebe456f581edcf40a4d95337346313fed26b3b8b9 /frontend/src/components/PasteArea.js
parentMerge pull request #7 from jackyzha0/react (diff)
parentinput length check and component splitting (diff)
downloadctrl-v-b63c59506439652354d2ae93796732039156dc32.tar.xz
ctrl-v-b63c59506439652354d2ae93796732039156dc32.zip
Merge pull request #8 from jackyzha0/react
more react changes
Diffstat (limited to 'frontend/src/components/PasteArea.js')
-rw-r--r--frontend/src/components/PasteArea.js34
1 files changed, 28 insertions, 6 deletions
diff --git a/frontend/src/components/PasteArea.js b/frontend/src/components/PasteArea.js
index f7c060c..f026ef9 100644
--- a/frontend/src/components/PasteArea.js
+++ b/frontend/src/components/PasteArea.js
@@ -1,31 +1,53 @@
import React from 'react';
+import { TitleInput, PasteInput } from './Inputs'
class PasteArea extends React.Component {
constructor(props) {
super(props);
this.state = {
- value: ''
+ title: '',
+ content: '',
};
this.handleChange = this.handleChange.bind(this);
this.handleSubmit = this.handleSubmit.bind(this);
}
+ componentDidUpdate() {
+ if (this.state.title === "") {
+ document.title = `ctrl-v`;
+ } else {
+ document.title = `ctrl-v | ${this.state.title}`;
+ }
+ }
+
handleChange(event) {
- this.setState({ value: event.target.value });
+ const target = event.target;
+ const name = target.name;
+
+ this.setState({
+ [name]: target.value
+ });
}
handleSubmit(event) {
- alert('paste content: ' + this.state.value);
+ console.log(`title: ${this.state.title}`)
+ console.log(`content: ${this.state.content}`)
event.preventDefault();
}
render() {
return (
<form onSubmit={this.handleSubmit}>
- <textarea placeholder="Paste your text here"
- value={this.state.value} onChange={this.handleChange} className="lt-shadow"/>
- <br></br>
+ <TitleInput
+ onChange={this.handleChange}
+ value={this.state.title}
+ maxLength="100" />
+ <PasteInput
+ onChange={this.handleChange}
+ content={this.state.content}
+ maxLength="100000" />
+ <br />
<input className="lt-button lt-shadow lt-hover" type="submit" value="new paste" />
</form>
);