_changes/data.js
ファイルには、次の実装があります。
function(data) {
var p;
var tmp = $$("#profile");
$.log(tmp);
$.log(tmp.profile);
if (undefined != tmp.profile) {
return {
cdrs : data.rows.map(function(r) {
p = r.value;
return p;
}),
message : "You are logged in as " + tmp.profile.name,
}
} else {
return {
cdrs : [ ] ,
message : "You are not logged in",
}
}
};
アプリケーションをリロードした直後に$.log(tmp.profile);
「undefined」が表示されているので、混乱しています。前の例$.log(tmp);
では、javascriptオブジェクトに(期待されるデータを持つprofile
タイプの)名前のメンバーが実際にあることが明確に示されています。Object
さらに奇妙なことに、変更通知が開始されると、変更$.log(tmp.profile);
が表示されていなくても、適切なデータが$.log(tmp);
表示されます。
何が起こっている?ここにカプセル化ルールがありませんか?