5

私は最近、Gruntjs に恋をしており、あらゆる機会に喜んで参加して、開発生活をより簡単にしています。現在、SASS ファイルをコンパイルし、watch を実行し、nodemon を使用して、アプリの作業中にノード サーバーを更新し続けています。

だから、ここで私は朝を過ごした場所です。Node アプリケーションを実行する前に MongoDB を開始したいと考えています。Node アプリのセットアップで、データベース内の値をチェックし、値が空の場合は、情報が満載のテスト ファイルをテーブルにプッシュします。

現在、grunt-concurrentgrunt-shell-spawnを使用して、必要な mongo および node コマンドを実行しようとしました。

grunt.initConfig({
  shell: {
    mongo: {
      command: 'mongo'
    },
    node: {
      command: 'node app.js'
    }
  },
  concurrent: {
    dev: {
      tasks: ['shell:mongo','shell:node'],
      options: { logConcurrentOutput: true }
    }
  }
});
grunt.loadNpmTasks('grunt-concurrent');
grunt.loadNpmTasks('grunt-shell-spawn');

ノードタスクを実行する前に、mongo コマンドが「ブロック」状態になるようにする方法はありますか? setTimeout 関数でノード タスク async を実行することでこれを実行できると思いますが、開発プロセスの変更が有効になるのを常に待つ必要はありません。現在、私はデータベース用に別のシェル タブを開いたままにしており、これを Grunt に統合してすべてを 1 か所にまとめたいと考えています。

広い範囲での重要性についてはよくわかりませんが、Node.js と MongoDB を利用している人なら誰でも、これは本当に便利だと思うでしょう。

ありがとう

4

2 に答える 2

-2

mongodb のサービス ポートを定期的にチェックして、アクセス可能かどうかを確認できますか?\

于 2014-01-26T10:08:05.157 に答える