Gruntjs <;%=yeoman.app%>;和<;%=约曼区%>;GrunFile的变量

Gruntjs <;%=yeoman.app%>;和<;%=约曼区%>;GrunFile的变量,gruntjs,yeoman,Gruntjs,Yeoman,在一些示例中,我经常看到gruntfiles和环境变量的使用。我自己没有用过这个,但是这些变量是从哪里派生出来的呢 此外,是否可以覆盖这些变量?为了使用这些特定的环境变量,是否需要有约曼 我已经通读了这本书和那本书。是否有更多的资源对此进行了讨论?这些变量从何而来? 从广义上讲,在开始处理语法时阅读。如果你是Grunt的新手,可以将该页面标记为书签,因为其中有些内容起初看起来并不重要,但在反复阅读时会很有用 更具体地说,是的…这些是从一个约曼发电机。例如,如果我运行最新版本,它生成的Gruntf

在一些示例中,我经常看到gruntfiles和环境变量的使用。我自己没有用过这个,但是这些变量是从哪里派生出来的呢

此外,是否可以覆盖这些变量?为了使用这些特定的环境变量,是否需要有约曼


我已经通读了这本书和那本书。是否有更多的资源对此进行了讨论?

这些变量从何而来?

从广义上讲,在开始处理
语法时阅读。如果你是Grunt的新手,可以将该页面标记为书签,因为其中有些内容起初看起来并不重要,但在反复阅读时会很有用

更具体地说,是的…这些是从一个约曼发电机。例如,如果我运行最新版本,它生成的Gruntfile.js包含以下代码:

yeoman: {
  // configurable paths
  app: require('./bower.json').appPath || 'app',
  dist: 'dist'
}
因此,至少从我使用的生成器中可以看到,
将默认为一个名为“app”的目录,
将指向“dist”。如果我粘贴了生成器为我创建的整个Gruntfile,您还会看到构建和测试应用程序的许多任务都使用了这些文件

正如您可以想象的(您在中看到的),这不仅仅限于yeoman,因为它是Grunt的一部分,所以您可以使用它来保持Gruntfile的干净和整洁

是否可以覆盖这些变量?

对。我上面提到的代码可以更改,以便
app
dist
指向不同的位置。使用yeoman generator创建的应用程序执行此操作可能会导致超出其价值的工作量。约曼发电机的全部目的是使工作自动化,这样你就不必摆弄这些东西了。每次使用生成器时,都会得到一个样板设置

…除非您是从头开始编写自己的生成器或应用程序,并从生成器“借用”位,然后是的,您可以将它们设置为对应用程序重要的任何内容

要使用这些特定的环境变量,是否需要拥有约曼?


没有,但如果你是从头开始构建应用程序,我看不出有任何理由使用“yeoman”这个名字。如果您使用的是yeoman生成的应用程序,我看不出有什么理由对其进行更改。

Matt,感谢您提供了全面且深思熟虑的答案。