在根文件中使用gruntjs

时间:2013-07-19 10:22:52

标签: javascript gruntjs commonjs

my file tree
|-  root
|-- gruntfile.js
|-- package.json
|-- lib (jQuery & other)
|-- webapp
|---- App-1
|------- src(app src)
|---------- js
|---------- css
|---------- images
|------- package.json(use to require other modules)
|---- App-2
|------- src(app src)
|---------- js
|---------- css
|---------- images
|------- package.json(use to require other modules)
... ...
|---- App-n

在我的文件系统中,大多数应用程序使用相同的任务。在每个“App”文件中使用gruntfile并不容易。 那么,我如何在“root”上使用gruntfile,并在我的“App”文件中使用它?

感谢〜:)

1 个答案:

答案 0 :(得分:0)

除非您的所有应用都完全相同,否则会为每个应用使用新的gruntfile 。我猜你的每个应用都会有所不同,因为你在预期中复制了src个文件夹。

我不建议使用全局依赖项设置。随着时间的推移,您的每个应用都会出现分歧,您的应用数量也会增加。当需要升级jQuery或root/lib文件夹中的任何其他依赖项时...您将被迫升级每个应用

现在的小便利完全不值得。

相反,只需在本地安装所有内容,然后您可以根据需要升级每个应用,而不会破坏其他应用。如果您在应用中遇到重复代码,请考虑将其移至模块中。像其他应用程序一样创建模块,然后键入npm link以使其可安装。然后在每个应用中执行npm link mymodule将模块安装到node_modules/mymodule文件夹。这是一个示例文件树:

my file tree
|-  root
|-- devmodules
|---- mymodule
|------ index.js
|------ package.json
|-- webapps
|---- App-1
|------- src(app src)
|---------- js
|---------- css
|---------- images
|------- node_modules (jQuery & other)
|------- Gruntfile.js
|------- package.json(use to require other modules)
|---- App-2
|------- src(app src)
|---------- js
|---------- css
|---------- images
|------- node_modules (jQuery & other)
|------- Gruntfile.js
|------- package.json(use to require other modules)
... ...
|---- App-n