如果你仅仅是想构建 Yo 的项目,构建方法请看 这里!
Hy2.0 的项目会多增加一些 qunar 和 hy 相关的配置。
Hy2
提供了一些非常便捷的开始方式,你可以通过阅读下面的内容根据自己的特定需要来选择:
环境与构建 #
基础环境 #
请确保你已经安装过下述环境:
Node.js
npm
我们推荐使用
>=3.0.0
版本的npm
进行开发。如果npm
的版本过低,可能会导致一些问题,具体说明和解决方案请查看 这里。
使用 ykit
构建(推荐)
Hy2
提供了基于 ykit
的构建工具,只需简单几步,你就可以构建出一个基于 Hy2
的项目。
安装 ykit:
(sudo) npm install ykit -g
初始化一个项目:在项目根目录下(没有则新建)执行
ykit init yo --hy2
,将会自动完成Hy2
的安装,同时为你构建出 Hy2标准工程目录
如果需要在已有项目中使用,详情请参考 这里。
全新的开发方式 #
Hy2
在开发方式上相比之前有了比较大的改进。
基于React:
Hy2
完全抛弃了传统的fekit
时代的开发模式,全面拥抱ES6
语法和React
,在使用Hy2
开发之前,你应该首先熟悉一下 React。样式革新:
Hy2
不再推荐使用传统的css
和js
分离的方式, 而是推荐直接在 .js文件里引入 .scss文件,构建工具会自动帮你在js
文件的目录中生成同名的css
文件。例如:page/demo/index.js
import React from 'react'; import ReactDOM from 'react-dom'; import './index.scss'; // 引入这个页面的scss
使用chunk模式:
Hy2
默认使用了webpack
的chunk
模式,即不管是单页还是多页模式,js
资源都是按需加载的。详情使用DLL:
Hy2
为了提升开发体验、有效利用浏览器缓存,将项目中的公共模块提取并生成公共文件lib.js
,用户只需要在页面中多添加一个引用即可。详情
开始开发 #
- 启动ykit:在项目上一级目录执行
(sudo) ykit server
添加资源引用:
首先,在项目根目录找到
ykit.yo.js
文件(该文件是在项目初始化时自动创建的),并通过export
参数配置js
文件的入口。export: ['./page/demo/index.js'],
由于构建工具会帮你在
js
文件所在目录生成一个同名css
文件,所以在配置入口时只需添加js
,不需要添加css
。然后,在页面中引用
js
和css
资源。<link rel="stylesheet" href="[项目路径]/prd/page/home/index.css" /> ... <script src="[项目路径]/prd/lib.js"></script> <script src="[项目路径]/prd/page/home/index.js"></script>
- 由于使用了
DLL
,所以页面中需要多引入一个lib.js
。 - 在更新了
node_modules
或是修改了DLL
相关的配置之后,你可能需要执行ykit dll
并重启ykit
服务。查看详情
- 由于使用了
访问页面:这个时候你的页面已经可以正常访问了
当然,你也可以访问项目初始化时,创建的示例页面(默认地址是:http://127.0.0.1/项目名/src/html/index.html)
Hy2
是基于 Yo
、Yo-router
和 HySDK
进行开发的,更加详细的使用说明请参照文档:
项目目录结构 #
在构建完成之后会生成下面的目录结构:
|- node_modules
|- src --------------------------// 项目源码
| |- common --------------------// 公共配置、工具等
| |- component -----------------// 公共组件
| | |- componentA
| | | |- index.js ---------// 组件代码
| | | |- style.scss -------// 组件样式
| | |- componentB
| | |- ...
| |- page ----------------------// 业务逻辑目录(页面维度)
| | |- pageA //页面目录
| | | |- index.js ---------// 页面入口文件
| | | |- index.scss -------// 页面样式
| | | |- component --------// 页面内部使用的组件
| | |- pageB
| | |- ...
| |- html ----------------------// 页面html
| |- yo-config -----------------// 样式配置文件夹
|- ...
|- package.json // npm配置文件
|- ykit.yo.js // ykit配置文件
更新升级 #
相比于之前的升级方式,现在的 Hy2
升级也更加简便,只需要在项目目录执行 npm install 模块名
即可。