2016-07-05 8 views
0

私はノードアプリケーションを使用しています。コードは機能ごとに独自のディレクトリに構成されています。私はGruntを使用して、これらのファイルをすべて連結しています。どのように依存関係へのパスを壊すことなくこれを行う必要がありますか?ここで複数のディレクトリからのファイルをGruntで連結する

は、例えば、プロジェクト構造である:

index.js 
config/ 
    database.js 
    auth.js 
feature1/ 
    routes.js 
    functions.js 
feature2/ 
    routes.js 
    functions.js 

パスをindex.jsに使用されている私は(例えばdist/scripts.min.jsに)それらを連結する際./config/database.jsファイルが存在しないため、例えばrequire('./config/database');ので、私はエラーを取得しています。私はこれをどのように扱うべきですか、ここで正しいアプローチを連結していますか?

答えて

0

フォルダ構造:

/MyApp 
    /dist 
    /src 
     /folder1 
      file.js 
     /folder2 
      file.js 
    Gruntfile.js 

Gruntfile.js

'use strict' 
module.exports = function(grunt) { 

    require('load-grunt-tasks')(grunt) 

    grunt.initConfig({ 
     concat: { 
      options: { 
      }, 
      dist: { 
       src: ['src/*/*.js'], 
       dest: 'dist/built.js', 
      } 
     }, 
    }); 

    grunt.registerTask('default', ["concat"]); 

} 

これは、単一のファイルに、/ SRCディレクトリ内のすべてのフォルダ内のすべてのファイルをご連絡します:/dist/built.js

+0

私はまだ同じ問題を抱えています。 'node dist/built.js'を実行すると、folder1/file1.jsが他のモジュールをインポートするため、「モジュールを見つけることができません」というエラーが表示されます。 'require( '../folder2/file.js');'そしてパスはdist/built.jsから有効ではありません –

+0

あなたは完全なエラーを投稿し、あなたの.jsファイルの例を共有することができますか? – DmitryK

+0

私は本当にシンプルなWebアプリケーションを、ここでは2つのJSファイルだけを入れておきました。 https://www.dropbox.com/s/y3hvkfv2ae9e8pg/grunt_so.zip?dl=0エラーはエラーです:モジュール './env'を見つけることができません –

関連する問題