0

node.js、Backbone、socket.ioを使用して小さなアプリを開発していて、ローカルで何かを動作させることができました(foreman startはエラーなしでアプリを正しく起動します)。ただし、herokuにデプロイすると、models.jsファイル(クライアントとサーバーで使用)にBackboneが必要なため、問題が発生します。それを見つけるのは簡単なことだと思いますが、私はノードに不慣れで、バックボーンに不慣れです。

私のメインのapp.jsファイル(ノードによって提供される)には、変数があります

var Backbone = require('backbone'),
_ = require('underscore')._;

次のようにapp.jsに必要なmodels.jsファイルもあります。

var models = require('./public/js/models.js');

(このファイルはクライアントにも必要です)。models.jsでは、コードから始めます

var server = false;
if (typeof exports !== 'undefined') {
    server = true;
    Backbone = require('Backbone');
    _ = require('underscore');
} 

そして、私はこれが行き詰まっているところだと思います。これが提供する正しい情報ではない場合はお詫びします(プロジェクト全体はhttps://github.com/kevadsett/testHerokuにあります)。アップロードの段階ですべての学習と開発をやり遂げただけでイライラするので、どんな助けでも大歓迎です!

4

1 に答える 1

0

問題は、存在しないモジュールをインポートしようとしていることだけかもしれないと思います。

Backbone = require('./Backbone');
 _ = require('./underscore');

代わりに試してください:

Backbone = require('backbone');
 _ = require('underscore');

私はあなたのアプリケーションでそれをテストしませんでしたが、主にこれはうまくいくはずです。

于 2013-01-22T15:59:31.400 に答える