1.0.11 • Published 6 years ago

egg-gen-cli v1.0.11

Weekly downloads
2
License
MIT
Repository
github
Last release
6 years ago

huiju-gen-cli

快速安装

首先,NRM切换到内部NPM服务器地址,如果没有安装NRM请自行全局安装:

  $ nrm use verdaccio

接着安装全局脚手架包:

  $ npm i -g huiju-gen-cli

安装工程:

  $ gen <projectname>
  $ cd <projectname> && npm install

目录结构

<projectname>
  |-- app
    |-- controller 控制层
      |-- <pagecontroller> 具体页面控制器文件夹
    |-- extend 内置对象扩展
      |-- context.js 全局ctx扩展
    |-- public 静态资源文件夹(打包之后生成)
      |-- css
      |-- script
      |-- images
    |-- router 路由
    |-- service 服务层
    |-- views 页面模板(打包之后生成)
  |-- config egg工程配置
  |-- logs 日志文件
  |-- build 打包及自动化构建脚本引用及配置
    |-- biild.js webpack生产环境打包引用
    |-- create.js 自动化构建引用
    |-- pageConf.json 页面配置中心
  |-- client 前端业务逻辑开发目录
    |-- common 部分第三方包/插件文件夹
      |-- utils 常用工具方法封装
      |-- widgets 全局公共组件
      |-- layouts 公共布局模板
    |-- module 页面及组件目录
      |-- widgets 模块共用组件(可选)
      |-- <pageview> 页面文件夹
        |-- widgets 页内组件文件夹
        |-- images 图片文件夹
        |-- page.html 页面模板入口
        |-- page.scss 页面样式入口
        |-- page.js 页面JS入口
  |-- test 单元测试
  |-- mock Mock数据

脚本命令

  • npm run dev 开发模式
  • npm run start 生产模式
  • npm run build 生产环境打包发布

  • npm run addview <viewname> -- --module=<modulename> : 添加页面,同时页面添加初始化后的controller、router。 可一次性添加多个页面,空格隔开就行,如:npm run addview home login ...

  • npm run rmview <viewname> -- --module=<modulename> : 删除页面,同时删除对应controller、router文件。
  • npm run addwidget <widgetname> -- --module=<modulename> --view=<viewname> : 添加组件,没有module属性时默认添加全局组件。
  • npm run rmwidget <widgetname> : 删除组件。
  • npm run addlayout <layoutname> : 添加全局共用布局母版。
  • npm run initviews : 根据配置项自动化构建 。

工程打包构建配置

脚手架已经默认将工程的webpack配置集成到了egg-huiju-gen-webpack中,所以大家无需再配置webpack.config.js。不过,我们还暴露了一些可配置项,根据需求进行自定义配置:

port <Number>

开发环境webpack开启dev server时的端口,默认:9000。

hotClient <Object>

浏览器热更新配置对象,详细配置说明参考webpack-hot-client,默认配置如下。

  • reload: <Boolean> 浏览器热更新,默认:true;
  • logLeavel: <String> 浏览器控制台日志,默认:info;
browser <String|Boolean>

配置开发环境webpack编译成功之后自动打开浏览器。默认:http://127.0.0.1:7001。

proxy <String|Boolean>

开发环境静态资源代理指向webpack dev server的内存文件。

splitChunks <Object>

配置公共代码块切割规则。具体配置方法参考split-chunk-plugin

externals

外置全局包配置,默认配置jQuery。

自动化构建配置项:

自动化构建脚本已经集成到egg-huiju-gen-build中。 配置方式:在build/pageConf.json中加入相关的页面构建配置:

  • widgets: Array[String]全局共用组件;
  • <modulename>: 模块
    • widgets: Arra[String]模块共用组件;
    • views: Array[Object]
      • path: String 页面文件夹路径;
      • router: String 页面路由,可选,无此项时根据path创建路由。
      • widgets: Array[String] 页内组件。

配置完成之后,执行npm run initviews即可自动构建项目所需页面、组件。 也可在开发过程添加配置,然后重新执行即可增量添加相应组件及页面。 对组件或者页面删除不可使用该方式,可以使用npm run rmwidget/rmview。
注意:删除之后记得同步更新配置项。