Yeoman
Dickence
从国外回到国内,多年从事IT行业,让我对IT的过去、现在,以及未来有了一定的认识;从IT方向的把握到具体的开发,均有一定的经验。希望能够通过我点滴的笔记,唤醒你的IT潜力。
展开
-
11、整合Yeoman
每次运行Generator时,实际上都是在使用yeoman环境。 该环境是与任何UI组件分离的基础系统,并且可以由任何工具抽象化。 当运行yo时,基本上只是在核心Yeoman环境之上运行终端UI外观。11.1 基础需要知道的第一件事是环境系统包含在yeoman-environment软件包中。 可以通过运行以下命令进行安装:npm install --save yeoman-environment该模块提供了检索已安装的Generator,注册和运行Generator的方法。它还提供了Ge原创 2020-11-21 12:39:55 · 280 阅读 · 0 评论 -
10、Yeoman 调试Generator
要调试生成器,可以通过像这样运行它来传递Node.js调试标志:# OS X / Linux / Windowsnpx --node-arg=--inspect yo <generator> [arguments]可以使用Chrome Devtools或首选的IDE调试生成器。 有关更多信息,请参见《Node调试指南》。Yeoman Generator还提供调试模式,以记录相关的生命周期信息。 您可以通过将DEBUG环境变量设置为所需的范围来激活调试(生成器系统的范围为yeoma原创 2020-11-21 12:14:20 · 282 阅读 · 0 评论 -
9、Yeoman 单元测试
继续阅读以了解有关Yeoman添加的测试助手的更多信息,以减轻对Generator进行单元测试的痛苦。以下示例假定您在BDD模式下使用Mocha。 全局概念应轻松应用于您选择的单元测试框架。9.1 组织测试很重要的一点是,要保持测试简单且易于编辑。通常,组织测试的最佳方法是:将每个Generator和子Generator分离到其自己的describe块中。 为Generator接受的每个选项添加一个describe块。 对每个声明(或相关声明)使用it块。在代码中,您应该以类似于以原创 2020-11-21 12:09:02 · 249 阅读 · 0 评论 -
8、Yeoman 管理配置
很常见的操作是:存储用户配置选项并在子Generator之间共享。例如,通常会共享首选项,例如语言(用户是否使用CoffeeScript?),样式选项(使用空格或制表符缩进)等。这些配置可以通过Yeoman Storage API存储在.yo-rc.json文件中。 可通过generator.config对象访问此API。8.1 常用方法this.config.save()此方法会将配置写入.yo-rc.json文件。 如果文件不存在,则save方法将创建它。.yo-rc.json文原创 2020-11-21 11:14:53 · 226 阅读 · 0 评论 -
7、Yeoman 使用文件系统
7.1 定位Yeoman文件实用程序基于这样的想法,在磁盘上始终有两个位置上下文。 这些上下文是Generator最有可能读取和写入的文件夹。目标上下文(Destination Context)第一个上下文是目标上下文。 “目标”是指Yeoman存放新应用程序的文件夹。 这是用户项目文件夹,在这编写大多数脚手架。目标上下文定义为当前工作目录或包含.yo-rc.json文件的最近的父文件夹。.yo-rc.json文件定义了Yeoman项目的根目录。该文件允许用户在子目录中运行命令并可在项目上运原创 2020-11-21 10:43:55 · 342 阅读 · 0 评论 -
5、Yeoman 可组合性(composability)
可组合性是一种将较小的部分组合成一件大事的方法。Yeoman为Generator提供了基于共同基础创建的多种方式。重写相同的功能毫无意义,因此提供了一个API来使用其他生成器中的生成器。在Yeoman中,可组合性可以通过两种方式启动:Generator可以决定与其他generator组合(例如,generator-backbone使用generator-mocha)。 最终用户也可以启动组合。(例如,Simon希望使用SASS和Rails生成Backbone项目)。 *注意:最终用户启动的合.原创 2020-11-20 22:16:40 · 533 阅读 · 0 评论 -
4、Yeoman 与用户交互
4、Yeomon 与用户交互自定义的Generator将与最终用户进行很多交互。默认情况下,Yeoman在Terminal上运行,但它也支持由不同工具提供的自定义用户UI。为了实现这种灵活性,Yeoman提供了一组用户界面元素抽象。作为作者的责任是在与最终用户进行交互时仅使用这些抽象。使用其他方式可能会阻止Generator在其他Yeoman工具中正常运行。例如,千万不要使用console.log() 或process.stdout.write() 输出内容,这一点很重要。不使用终端的用户看不到原创 2020-11-19 15:02:21 · 231 阅读 · 0 评论 -
3、Yeoman Generator运行时上下文(Runtime Context)
3、Yeomon Generator运行时上下文(Runtime Context)编写Generator时要把握的最重要概念之一是方法的运行方式和运行环境。3.1 原型方法作为动作直接附加到Generator原型的每种方法都被视为一项任务。每个任务均由Yeoman环境的“运行循环”(run loop)依次运行。换句话说,由Object.getPrototypeOf(Generator)返回的对象上的每个函数将自动运行。Helper和私有方法既然原型方法是一项任务,那么如何定义不会自动原创 2020-11-19 13:21:20 · 328 阅读 · 0 评论 -
2、Yeoman 创建Generator
2、创建GeneratorGenerator是Yeomon生态的基础。 它们是由yo运行的插件,用于为最终用户生成文件。本节主要说明如何创建和分发自己的内容。注意:我们构建了一个generator-generator来帮助用户开始使用自己的Generator。 了解以下概念后,即可使用它来引导自己的生成器。2.1 组织Generator设置为node moduleGenerator的核心是Node.js首先,创建一个文件夹,在其中编写Generator。该文件夹必须命名为gene原创 2020-11-19 11:44:15 · 306 阅读 · 0 评论 -
1、Yeoman 入门
1、开始使用Yeomon使用npm安装Yeomonnpm install -g yo安装需要的generator。名称如下:generator-XYZ。可以使用Discovering Generators网页查看所有可用的Generator。使用npm安装generator,以generator-webapp为例npm install -g generator-webapp基础脚手架进入要生成工程的文件夹,依然使用generator-webapp为例:yo web.原创 2020-11-18 23:12:13 · 237 阅读 · 0 评论 -
6、Yeoman 管理依赖
运行Generator时,经常需要运行npm(或yarn)和Bower来安装项目需要的附加依赖。这些任务非常频繁,因此Yeoman已经将它们抽象化了。 我们还将介绍如何通过其他工具启动安装。请注意,Yeoman提供的安装助手(Installation Helper)将作为安装队列的一部分,自动安装运行一次。 如果它们在运行后需要运行一些程序,请使用结束队列。6.1 npm您只需要调用this.npmInstall() 即可运行npm安装。 Yeoman将确保npm install命令仅被运行原创 2020-11-20 22:37:17 · 280 阅读 · 0 评论