RequireJSとNodeを使用してプロジェクトを構築し、サーバー側とクライアント側の両方でモジュールを再利用しています。これまでのところかなりうまくいっています(うまくいくためのいくつかの小さなねじれ)。
問題は、遅延コールバック内のエラーがノードコンソールに(またはその他の方法で)表示されないことであるように思われます。デバッグが非常に困難になります。
asdasdasd(); // Throws error, function is undefined, as intended
this.loadOrganization(organization_key, true).then(function(org) {
asdasdasd(); // No error anywhere, script just stops executing
});
loadOrganizationは遅延オブジェクトを返し、コールバックは正常に呼び出されます-ただし、未定義に関連するエラーメッセージは表示されません(一般的な構文エラーは、モジュールの評価時にノードによって報告されます)。
jsdomとjqueryを使用して、サーバー側でブラウザーのコンテンツをブートストラップします。次に、jsdonからほとんどのメソッドにjqueryを渡します-したがって、loadOrganizationに使用される遅延オブジェクトは、jsdomを介したjQueryからのオブジェクトです。ただし、使用される遅延をnpmでインストールされたjqueryから1つに変更しても、違いはありません。
エラーが出力されていない場合、デバッグは非常に困難です。