Titanium AlloyのModelをいじっててハマったメモ
記事を表示する記事画面のarticleという画面があった。
article.xml
<Alloy> <Window> ~snip~
idを省略することによって、controller名が自動的につくので、このWindowのidはarticleとなる。
記事の内容を表すModelとしてやっぱりarticleというModelを作った。別にふつうのことだと思うけども。
で、controllerはarticle.coffeeで、初期化処理などが入る。
onCloseClicked = -> $.article.close() ~snip~ @article = Alloy.createModel('article', {id: 1}) @article.fetch( success: => $.articleTitle.text = @article.title ~snip~
modelは最後に追加したんだけど、急にアプリが落ちやすくなるし、onClosedClickedが動かなくなった。
どういうことか散々時間を使った挙句、わかったのは、modelは$.model名で参照できるようになってしまうっぽい。つまり、この状態だと自動的に付与されるWindow名とmodel名がぶつかってよくわからん状態になっていたもよう。
XMLでmodelのインスタンス化とかできるのね。。。
http://docs.appcelerator.com/titanium/3.0/#!/guide/Alloy_XML_Markup-section-35621528_AlloyXMLMarkup-ModelElement
結果、Windowに明示的にidをつけて正常に戻すことができた。という話。
- 作者: 岩明均
- 出版社/メーカー: 講談社
- 発売日: 2004/10/22
- メディア: コミック
- 購入: 11人 クリック: 136回
- この商品を含むブログ (283件) を見る