Integrated by BirdLee 伟小鹏, licensed under CC BY-NC 4.0 (创意共享 4.0)
前言:本资料是宅印项目所用到或相关的部分前端知识,在此和大家共享,并作为进行项目开发的预备知识。若发现错误之处,欢迎指正。
Node.js 环境
React 框架
-
简介
React 是一个构建用户界面的前端框架,本项目使用React框架搭建,以下是一些入门资料:
* React官网
* 阮一峰:React 入门实例教程
-
资源
- react-components网站 可以看到各种热门react组件
- Flux 推荐与React配套使用的前端架构方式(本项目暂不使用)
-
配合工具
-
react-tools 主要把它当作JSX预处理器,使用方法简单 (本项目使用该编译器已足够)
-
npm
$ npm install -g react-tools
- 常用使用语法
$ jsx -w [watch dir] [build dir]
-
npm
- babel 可装插件的JS预处理器(可以尝试使用)
-
react-tools 主要把它当作JSX预处理器,使用方法简单 (本项目使用该编译器已足够)
-
推荐配合库
- react-router React常用路由组件(本项目使用)
- react-bootstrap UI组件,Bootstrap 的 React 版,支持CommonJS规范和AMD规范等(本项目使用)
- amazuei-react UI组件,中国本土的 AmazeUI 的 React版,支持CommonJS规范和AMD规范等(宅印网页端使用)
- material-ui UI组件,实现Google的Material设计规范,非常美观,但只支持CommonJS规范
Git 版本控制系统
-
简介
当今最热门的免费开源的分布式版本控制系统。官网:http://git-scm.com/
- 本项目使用Git进行代码版本管理并进行团队协作
-
学习资料
-
常用命令小结
-
add
- 添加指定文件到暂存区:
$ git add [file]
- 添加所有文件到暂存区(被忽略的文件除外):
$ git add *
-
commit
- 提交已暂存的更改:
$ commit -m [comment]
- 暂存并提交更改:
$ commit -a -m [comment]
-
checkout
- 切换分支:
$ git checkout [des branch]
- 创建并切换到新分支<跟踪的上游分支>:
$ git checkout -b [new branch] <[remote:branch]>
-
fetch
- 从远程获取特定分支的引用数据到本地远程引用:
$ git fetch [remote] [remote branch]:[local brance]
- 从远程获取所有引用数据到本地远程引用:
$ git fetch --all
-
pull
- 拉取当前分支已注册注册跟踪的远程分支,并整合到当前分支:
$ git pull
- 拉取并整合指定远程库的特定分支到本定特定分支:
$ git pull [origin] [remote branch]:[local brance]
-
push
- 推送本地分支到远程分支:
$ git push [origin] [loacl branch]:[remote branch]
-
merge
- 整合其他分支到当前分支:
$ git merge [other branch]
-
rebase
- 对当前分支实行变基:
$ git rebase [new base]
-
branch
- 查看分支详情:
$ git branch -vv
- 删除某个分支:
$ git branch -d [branch]
- 设置上游跟踪分支:
$ git branch --set-upstream-to=[remote]/[upstream branch] <[work branch]>
-
status
- 查看当前工作目录状态:
$ git status
-
remote
- 查看与某个远程仓库的同步信息:
$ git remote show [remote]
-
config
- 用户名:
user.name
- 用户邮箱:
user.email
- 编辑器:
core.editor
- 比较工具:
merge.tool
- 用户名:
-
Node-Webkit 框架
-
简介
Node.js 和 Webkit的结合,现称nw.js, 使我们可以使用Web技术构建本地应用程序。nw.js官网
- 本项目就是基于nw.js开发的
-
学习资源
Socket 协议
-
简介
网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socket。
- 在本项目中,Node-Webkit 与 本地.Net 后台 通过传统 Socket 实现通信**
-
学习资料
WebSocket 协议
-
简介
WebSocket协议是HTML5一种新的协议。它实现了浏览器与服务器全双工通信(full-duplex)。
-
Socket.io
Socket.io是一个流行强大的兼容HTTP轮询和WebSocket的JS实时通信库。官网
- 在本项目中,将使用Socket.io与云端推送服务器通信,实现订单消息的实时推送
SASS 格式
-
简介
SASS是强大的CSS与处理器,可以用它编写结构化的,高可重用度的样式。官网- 本项目使用SASS书写样式表。
-
学习资料
Markdown 格式
-
简介
Markdown是一种可以使用普通文本编辑器编写的标记语言,通过简单的标记语法,它可以使普通文本内容具有一定的格式,
GitHub 使用Markdown撰写项目文档。- 本项目使用Markdown撰写部分文档(本文档就是用Markdown撰写的)
-
学习资料
YAML 格式
-
简介
YAML是“Yet Another Markup Language”(另一种标记语言)的缩写,但为了强调这种语言以数据做为中心,而不是以置标语言为重点,而用返璞词重新命名。它是一种直观的能够被电脑识别的数据序列化格式,是一个可读性高并且容易被人类阅读,容易和脚本语言交互,用来表达资料序列的数据描述语言。-
本项目使用YAML书写大部分API
语法格式简介参见K.K:《初探YAML》
-
本项目使用YAML书写大部分API
CommonJS 规范
-
简介
CommonJS Modules/1.0 是目前JavaScript模块化的实现标准。NodeJS就是个标准的一个实现。在前端编程中,可以使用 browserify或webpack实现CommonJS规范。
规范中文简介参见 魏志锋:《CommonJS Modules/1.0 规范》
AMD 规范
-
简介
AMD是"Asynchronous Module Definition"的缩写,意思就是"异步模块定义"。它采用异步方式加载模块,模块的加载不影响它后面语句的运行。所有依赖这个模块的语句,都定义在一个回调函数中,等到加载完成之后,这个回调函数才会运行。
进一步介绍和例子参见阮一峰:《Javascript模块化编程(二):AMD规范》 ,Snandy:《AMD:浏览器中的模块规范》- 本项目前端采用AMD规范
- 参考资料:各个库的官方网站,百度百科
- 2015/11/22 Integrated By BirdLee 伟小鹏(674107287@qq.com)
- Licensed under CC BY-NC 4.0 (创意共享 4.0)