Skip to content

Commit fa288f5

Browse files
committed
Click Register to register with LeanCloud API
1 parent f449c63 commit fa288f5

File tree

2 files changed

+34
-1
lines changed

2 files changed

+34
-1
lines changed

src/UserDialog.js

+12-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import React, { Component } from 'react';
22
import './UserDialog.css';
3+
import { signUp } from './leanCloud';
34
export default class UserDialog extends Component {
45
constructor(props) {
56
super(props);
@@ -16,7 +17,17 @@ export default class UserDialog extends Component {
1617
selected: e.target.value
1718
});
1819
}
19-
signUp(e) {}
20+
signUp(e) {
21+
e.preventDefault();
22+
let {username, password} = this.state.formData;
23+
let success = (user) => {
24+
console.log(user);
25+
};
26+
let error = (error) => {
27+
console.log(error);
28+
};
29+
signUp(username, password, success, error);
30+
}
2031
signIn(e) {}
2132
changeFormData(key, e) {
2233
let stateCopy = JSON.parse(JSON.stringify(this.state));

src/leanCloud.js

+22
Original file line numberDiff line numberDiff line change
@@ -8,3 +8,25 @@ AV.init({
88
});
99

1010
export default AV;
11+
12+
export function signUp(username, password, successFn, errorFn) {
13+
let user = new AV.User();
14+
user.setUsername(username);
15+
user.setPassword(password);
16+
user.signUp().then(function(loginedUser) {
17+
let user = getUserFromAVUser(loginedUser);
18+
successFn.call(null, user);
19+
}, function(error) {
20+
errorFn.call(null, error);
21+
});
22+
23+
return undefined;
24+
25+
}
26+
27+
function getUserFromAVUser(AVUser) {
28+
return {
29+
id: AVUser.id,
30+
...AVUser.attributes
31+
};
32+
}

0 commit comments

Comments
 (0)