次のようなモジュールがあります。
define([ 'jquery' ], function($) {
'use strict';
return {
email: $('#email').val() //$('#email') is a html input box
};
});
実行時にこのモジュールを必要とするページから
var Form= require('src/form');
Form.email;
正しい値が取得されますが、新しい電子メール アドレスを入力すると、元の値が取得され続け、更新されません。
次のように変更すると、機能します。
define([ 'jquery' ], function($) {
'use strict';
return {
email: $('#email');
};
});
...
var Form= require('src/form');
Form.email.val();
RequireJs は、返されたオブジェクトを 1 回しか評価していないように思えます。ここで何が起こっているか知っている人はいますか?