はじめてのNode.js覚え書き③
はじめてのNode.js覚え書き① - uramonk's blog
はじめてのNode.js覚え書き② ECONREFUSEDが発生する - uramonk's blog
本の第12章を参考にスマートフォン用BBSを作成していましたが、 MongoDBやJQueryのバージョンが異なるためうまく動作しない箇所がありました。
MongoDB
getLatestを実行してデータベースからtopicを取得しようとすると、下記のようなエラーが発生しました。
MongoError: Can't canonicalize query: BadValue bad order array [2]
内容からして、下記ソートを行う箇所でエラーが発生している感じでした。
cursor.sort([['date', -1]]).limit(end -start).skip(start);
エラー内容で検索したところ、下記サイトを見つけました。stackoverflow.com
こちらを参考に下記のようにコードを変更したところ、うまく動作するようになりました。
cursor.sort({'date':-1}).limit(end -start).skip(start);
JQuery
mobbs.jsファイル内で、pagebeforeshowイベントハンドラーを定義していたのですが、Webページにアクセスしてもこちらのコードに到達されませんでした。
調べたところ、バージョンアップによってlive()が使えなくなり、代わりにon()を使うようにする、さらに引数の記述方法も変わっていました。h2ham.net
サイトを参考に、こちらのコードを、
$('#topics').live('pagebeforeshow', function (e, data) {
下記のように変えたところ、イベントをキャッチすることができるようになりました。
$(document).on('pagebeforeshow', '#topics', function (e, data) {