0

コマンドを使用して流星ホスティングで公開されているアプリケーションがあります。

meteor deploy spyermeteor

アプリケーションはhttp://spyermeteor.meteor.comでレンダリングされますが、クライアント側ではデータは使用されません。

次の操作を行うと、アプリケーションがサーバー側で正常に実行されていることがわかります。

meteor logs spyermeteor 

次にブラウザ コンソールを確認すると、データベースにアクセスできることがわかります。

Annonces.find().count() // per exemple

反応性がクライアント側で機能しないことをどのように説明しますか? 私の概念に何か問題があるのか​​もしれませんが、私のコンピューター (Windows) と VM (Linux debian) では問題なく動作します。どんな助けでも大歓迎です。

ソースコードはここから入手できますhttp://www.github.com/Rebolon/spyerMeteor

4

1 に答える 1

1

本番モードでは、すべてのファイルが連結され、1 つの JavaScript ファイルに縮小されます。コードのどこかにわずかな構文エラーがあるだけでも、残りのコードは実行されません。

展開されたサイトを見ると、クライアント側とサーバー側のコードを分割する必要があります。エラーが表示される

Uncaught ReferenceError: Npm is not defined 

これはサーバー上でのみ実行することを意図していますが、使用するコードは、サーバーNpm上でのみ実行する必要があるときにクライアントで実行されています。本番モードでもエラーが発生しますが、ファイルが連結および縮小されていないため、エラーによって他の JavaScript ファイルの実行が停止されることはありません。

このコードをファイル/serverまたはif(Meteor.isServer) {..}ブロックに移動できます

また、コードは <= Meteor 0.5.9 用に作成されているようです。アプリをデプロイする前に、ローカル インスタンスを 0.6.2 にアップグレードし、js コンソールでこれらすべての例外を探す必要があります。

于 2013-04-19T09:58:59.303 に答える