Lightning Componentのltng:requireタグで利用できるafterScriptsLoadedと要素取得のcomponent.findについてです。
この組み合わせの処理を試していた時、Salesforce1の"pull to Refresh"による画面リフレッシュ時にエラーが発生しました。
エラー原因を調査したところ、component.findの処理で対象の要素が取得できていないみたいでした。
検証用に次のコードを用意しました。
まず、画面を表示した時点でのログ内容です。
最初にdoInitの処理が実行され、次にafterScriptsLoadedの処理が実行されます。この時点ではどちらも値取得ができていました。
続いて"pull to Refresh"実行後のログ内容です。
このときは先にafterScriptsLoadedが実行されて、次にdoInitが実行されていました。またafterScriptsLoadedの方ではcomponent.findによる値取得が失敗していました。
今回確認できたのはここまでになります。自分では解決方法を見つけられなかったのですが、afterScriptsLoadedの処理ではこのような現象が確認できました。