diff --git a/client/containers/Login/Login.js b/client/containers/Login/Login.js index 17306e55..fa7b596b 100644 --- a/client/containers/Login/Login.js +++ b/client/containers/Login/Login.js @@ -1,41 +1,54 @@ -// import { React, Component } from '../../base.js' -import './Login.scss' -import React, { Component } from 'react' -import { Button, Input, Icon, Checkbox } from 'antd' -import { BrowserRouter as Router, Route, Link } from 'react-router-dom' +import './Login.scss'; +import React, { Component } from 'react'; +import { Form, Button, Input, Icon, Checkbox } from 'antd'; +import { BrowserRouter as Router, Route, Link } from 'react-router-dom'; +const FormItem = Form.Item; class Login extends Component { - constructor(props) { - super(props) + handleSubmit = (e) => { + e.preventDefault(); + const form = this.props.form; + + // 获取全部组件的值 + // console.log(form.getFieldsValue()); + form.validateFields((err, values) => { + if (!err) { + console.log('Received values of form: ', values); + } + }); } - - render () { - console.log(this.props) + render() { + const { getFieldDecorator } = this.props.form; return ( - - {this.props.value}{this.props.per} -
-
- } /> - - } /> - -
- 记住密码 - -
-
-
-
- ) +
+ + {getFieldDecorator('userName', { + rules: [{ required: true, message: '请输入用户名!' }] + })( + } placeholder="Username" /> + )} + + + {getFieldDecorator('password', { + rules: [{ required: true, message: '请输入密码!' }] + })( + } type="password" placeholder="Password" /> + )} + + + {getFieldDecorator('remember', { + valuePropName: 'checked', + initialValue: true + })( + 记住密码 + )} + + +
+ ); } } -export default Login +const LoginWrap = Form.create()(Login); + +export default LoginWrap; diff --git a/client/containers/Login/Login.scss b/client/containers/Login/Login.scss index 25ddd363..23812370 100644 --- a/client/containers/Login/Login.scss +++ b/client/containers/Login/Login.scss @@ -1,45 +1,7 @@ @import '../../styles/common.scss'; /* .login-main.css */ -.login-main { - display: -webkit-box; - -webkit-box-orient: vertical; - height: 100%; - -webkit-box-flex: 1; +.login-form { + width: 4rem; + margin: 1rem auto; } - -/* .login-box.css */ -.login-box { - font-size: 0.14rem; - display: -webkit-box; - -webkit-box-align: center; - -webkit-box-pack: center; - -webkit-box-flex: 1; - - .content { - max-width: 5rem; - min-width: 3rem; - zoom: 1; - overflow: hidden; - margin: -70px 0 0 0; - } - - h3 { - font-size: 0.2rem; - } - - a { - font-size: 0.14rem; - } - - // ant 元素样式 - .ant-input-affix-wrapper { - margin: 0 0 20px 0; - height: 35px; - } - - .login { - float: right; - } -} - diff --git a/client/containers/Login/Login_container.js b/client/containers/Login/Login_container.js index 0a78386b..3b59a401 100644 --- a/client/containers/Login/Login_container.js +++ b/client/containers/Login/Login_container.js @@ -8,7 +8,7 @@ const increaseAction = { type: 'increase' } function mapStateToProps(state) { return { - per: '测试数据', + per: '测试数据' } } @@ -24,4 +24,3 @@ const App = connect( )(Login) export default App - diff --git a/package.json b/package.json index 8a222722..fcfd66d7 100644 --- a/package.json +++ b/package.json @@ -31,6 +31,7 @@ "mongoose": "4.10.8", "mongoose-auto-increment": "^5.0.1", "node-sass-china": "^4.5.0", + "sha1": "^1.1.1", "redux": "^3.7.1", "sha1": "^1.1.1", "ykit-config-antd": "^0.1.3", diff --git a/server/models/user.js b/server/models/user.js index d632d0df..0e76a70d 100644 --- a/server/models/user.js +++ b/server/models/user.js @@ -46,12 +46,12 @@ class userModel extends baseModel{ } del (id) { return this.model.deleteOne({ - _id: id + _id: id }) } update(id,data){ return this.model.update({ - _id: id, + _id: id },{ username: data.username, password: data.password,