کلاس امروز نیز به صورت عملی خواهد بود. در این جلسه به کمک ابزارهای زیر یک سرور کامل پیاده سازی خواهم کرد. توجه کنید این جلسه در موفقیت شما در پروژه نهایی تاثیر گذار است بنابراین تلاش کنید بر روی کلاس حضور داشته باشید.
https://expressjs.com/
https://github.com/parse-community/parse-dashboard
https://github.com/parse-community/parse-server
https://expressjs.com/
https://github.com/parse-community/parse-dashboard
https://github.com/parse-community/parse-server
GitHub
GitHub - parse-community/parse-dashboard: A dashboard for managing Parse Server
A dashboard for managing Parse Server. Contribute to parse-community/parse-dashboard development by creating an account on GitHub.
در جلسه فردا می خواهیم:
یک منطق ساده در سرور پیاده سازی کنیم و همچنین یک چت سرور و کلاینت پیاده سازی کنیم بنابراین لازم همه ابزارهای شما کامل باشد و برنامه نوشته شده در جلسه قبل بدرستی بر روی کامپیوتر شما اجرا شود.
یک منطق ساده در سرور پیاده سازی کنیم و همچنین یک چت سرور و کلاینت پیاده سازی کنیم بنابراین لازم همه ابزارهای شما کامل باشد و برنامه نوشته شده در جلسه قبل بدرستی بر روی کامپیوتر شما اجرا شود.
کد جلسه قبل برای اتصال به سرور:
export default class LoadParseObj extends Component {
constructor(){
super();
this.state = {date: []};
this.onSuccuss = this.onSuccuss.bind(this);
this.onError = this.onError.bind(this);
}
onSuccuss(result){
console.log("result " + result);
//setTimeout(()=> this.setState({date: result}), 2000); // for test!
this.setState({date: result});
}
onError(error){
console.log("error " + error);
this.setState({date: []}); // todo: handle error state!
}
componentDidMount() {
var query = new Parse.Query("Monster"); // todo: class name (myclass) must be constant!
//query.equalTo("...", "...");
query.find({
success: (result) => {this.onSuccuss(result)},
error: (error) => {this.onError(error)},
});
}
render() {
const data = this.state.date;
let result;
if (data.length < 1){
result = < div>LoadParseObj... </div>;
} else {
const items = data.map((item) =>{
return (
<li key={item.id}>
{item.get('strength')}
</li>
);
});
result = <ul>{items}</ul>;
}
return (
<div>
{result}
</div>
);
}
}
export default class LoadParseObj extends Component {
constructor(){
super();
this.state = {date: []};
this.onSuccuss = this.onSuccuss.bind(this);
this.onError = this.onError.bind(this);
}
onSuccuss(result){
console.log("result " + result);
//setTimeout(()=> this.setState({date: result}), 2000); // for test!
this.setState({date: result});
}
onError(error){
console.log("error " + error);
this.setState({date: []}); // todo: handle error state!
}
componentDidMount() {
var query = new Parse.Query("Monster"); // todo: class name (myclass) must be constant!
//query.equalTo("...", "...");
query.find({
success: (result) => {this.onSuccuss(result)},
error: (error) => {this.onError(error)},
});
}
render() {
const data = this.state.date;
let result;
if (data.length < 1){
result = < div>LoadParseObj... </div>;
} else {
const items = data.map((item) =>{
return (
<li key={item.id}>
{item.get('strength')}
</li>
);
});
result = <ul>{items}</ul>;
}
return (
<div>
{result}
</div>
);
}
}