Meteorでサーバ処理を呼び出しつつ、
処理の結果を非同期でrenderしたくって、パッケージ『deanius/meteor-promise』
を導入したのでそのメモです。
😎 やりたかったこと
- クライアントのタイムゾーンの日付 => サーバに送付して todo 完了に変更 - todo が完了したら、完了していない todo の件数をサーバで計算 - todo の件数をサーバで計算し終わったら、 ビュー側を更新
🐮 Meteor Package promiseの導入
パッケージを導入。(ejsonもいるっぽいです)
meteor add deanius:promise |
次にclient側のjsに次の処理を追加。
Template.todosItem.helpers({ |
Meteor.call("todoChecked")
って書くところを Meteor.callPromise("todoChecked")
と書いて、
結果が来たらレンダーしてくれる。
🍣 ライブラリの詳しい使い方
公式の Meteor Async w/ deanius:promise はデモもあって分かりやすかったです!
🎳 所感
- Package「deanius:promise」自体は使いやすいし、感激 - JavaScript/Meteor.js 弱者過ぎて、本当に正しい書き方とは思えない。誰かおしえてください>< - Promiseってもう少し別の概念な気がする。ユースケース間違ってる気がしてならない。 - いちいちサーバサイド呼び出しまくってるけど本当にいいのだろうか...、ユーザーちゃんと来たらさばけなくない?
つまりもうちょっとちゃんと勉強しろってことかな。まずは1回JavaScriptちゃんと勉強してみようと思います。
😀 Healthack.meちょっとずつ改善中
自分の健康管理のチェックリストアプリケーションですが、『healthack.me』を改善中です。
機能の要望とか、コードのまずい部分の修正とかあれば、『morizyun/healthack - GitHub』
のISSUEに登録ください。