使用CLI创建初始化项目

第一步 安装 create-umi

  1. $ yarn global add create-umi
  2. ...
  3. success Installed "create-umi@0.6.0" with binaries:
  4. - create-umi
  5. Done in 36.07s.

create-umi主要是用来使用命令行创建umi相关的库或者项目。命令中打印success,应该就安装成功了,如果你还需要进一步确认,可以通过执行create-umi -v来打印create-umi的版本号。

第二步 使用create-umi新建项目

  1. $ cd 你的常用项目目录
  2. $ create-umi hero
  3. ? What functionality do you want to enable? (Press <space> to select, <a> to tog
  4. gle all, <i> to invert selection)
  5. antd
  6. ❯◉ dva
  7. code splitting
  8. dll
  9. hard source

这里的hero指的是项目名,你可以输入任意的名字。 create-umi提供的定制化能力,你可以通过空格键来选中你需要的功能,然后通过敲击回车键,来确认开始创建项目。这里我们选中antd和dva就好。

  1. ? What functionality do you want to enable? antd, dva
  2. create package.json
  3. create mock/.gitkeep
  4. create src/assets/yay.jpg
  5. create src/layouts/index.css
  6. create src/layouts/index.js
  7. create src/pages/index.css
  8. create src/pages/index.js
  9. create src/global.css
  10. create .gitignore
  11. create .editorconfig
  12. create .env
  13. create .umirc.js
  14. create .eslintrc
  15. create .prettierrc
  16. create .prettierignore
  17. create src/models/.gitkeep
  18. create src/app.js
  19. 📋 Copied to clipboard, just use Ctrl+V
  20. File Generate Done

如果你的命令行打印的日志如上,那就说明你新建项目完成了,如果有其他的错误,可以确认一下,当前目录下是否存在hero文件夹。注意create-umi会自动帮你新建hero文件夹,所以你可以稍微注意一下。

第三步 切换到项目目录,安装依赖

  1. $ cd hero
  2. $ yarn
  3. ...这个过程需要一点时间
  4. success Saved lockfile.
  5. Done in 170.43s.

看到命令行打印success,一般就是安装成功了,但是有时候因为一些网络问题,会出现丢包的情况。所以我们继续验证。

第四步 启动开发服务器

```bash $ yarn start ✔ success webpack compiled in 2s 743ms DONE Compiled successfully in 2750ms 10:24:03

App running at:

WX20181205-102635@2x.png | center | 747x431

还不错吧!😁

错误说明

如果,你的表现和上面的不同,你可以通过比对下面两个情况来修正。

1.打印如下

  1. ? message Probably:
  2. /usr/local/bin/node /Users/xiaohuoni/Documents/***/***/node_module
  3. s/umi/lib/scripts/realDev.js dev (pid 928)
  4. in /Users/xiaohuoni/***/***/
  5. Would you like to run the app on another port instead? (Y/n)

这个问题是因为,你已经开启过一个umi的开发服务,占用了默认的8000端口,你只要输入Y就可以,在另一个空闲端口上,开启umi服务。最终访问路径以输出日志为准。

2.其他情况

  • 可能是node版本问题引起的,确认一下你的开发环境。
  • 网络问题引起的,知道的,科学上网。或者使用国内源,全局安装tyarn。