UNPKG

yun-ui

Version:

Mobile UI Components Library for Vue.js by yunzhijia.

171 lines (130 loc) 4.43 kB
# [yun-ui](https://yun-ui.github.io/yun-ui-doc/) [![npm package](https://img.shields.io/npm/v/yun-ui.svg?style=flat-square)](https://www.npmjs.org/package/yun-ui) [![Build Status](https://img.shields.io/circleci/project/yun-ui/yun-ui/develop.svg)](https://img.shields.io/circleci/project/yun-ui/yun-ui/develop.svg) [![Dependencies](https://img.shields.io/david/yun-ui/yun-ui.svg?style=flat-square)](https://david-dm.org/yun-ui/yun-ui) ## Overview 本文将介绍`yun-ui`的安装方式和基本的使用方法。 ### 基础技术框架 1. [Vue.js](https://vuejs.org/) 2. [Lerna.js](https://lernajs.io/) 3. [ECMAScript 2015](https://babeljs.io/learn-es2015/) 4. [Webpack](https://webpack.github.io/docs/) 5. [ESLint](http://eslint.org/) ### 文件目录结构 ``` bash yun-ui/ ##根目录 build/ ##webpack构建配置目录 config/ ##环境配置文件目录 demo/ ##demo源文件 dist/ ##构建后的文件 |_ demo/ ##构建后的demo文件 |_ yun/ ##构建后的各个组件代码 node_modules/ ##第三方依赖包 packages/ ##lerna拆分的组件包源文件 src/ ##其他基础公共源文件 static/ ##静态资源文件(图片图标等) |_ demo/ ##demo的静态资源文件 |_ yun/ ##yun-ui组件的静态资源文件 test/ ##测试代码源文件 .babelrc ##babel配置文件 .editorconfig ##编辑器配置文件 .eslintignore ##eslint忽略检查的文件 .eslintrc ##eslint配置文件 .gitignore ##git忽略文件的配置 index.html ##总入口文件 lerna.json ##lerna配置文件 package.json ##依赖包声明 README.md ##read me ``` ## Getting Started #### I. Install **npm安装** 推荐使用`npm`的方式安装,它能更好地与`Webpack`等构建工具结合使用。 ``` bash npm install yun-ui ``` **CDN** *(TODO)* 可以从静态资源服务器获取最新的资源文件。 #### II. Start **引入Yun UI** 你可以引入整个`yun-ui`组件库,或者根据需要引入部分组件。 ##### 完整引入 完整引入yun-ui后,在以后的引用中,不需再引入组件及样式,可直接在模板中使用或调用方法 在你的工程目录入口`js`文件中,写入以下内容: ``` javascript import Vue from 'vue' /* 引入组件库js文件 */ import yun from 'yun-ui' /* 引入组件库全部css */ import 'yun-ui/dist/yun/index.css' Vue.use(yun) new Vue({ // vue options }) ``` 组件中使用,如在`example.vue`中使用`yun-ui`: ```html <!-- 在vue的template中直接引用即可 --> <template> <div> <y-button></y-button> <y-badge></y-badge> </div> </template> ``` ##### 按需引入 你可以只安装你需要的组件。这里以安装`yun-ui``button`组件为例: ``` bash npm install yun-ui --save ``` 安装后在所需的`.vue`文件中进行声明和使用,或在入口`js`文件中声明: ```html <template> <div> <y-button>test</y-button> </div> </template> ``` ``` javascript <script> import Vue from 'vue' import {Button} from 'yun-ui' import 'yun-ui/dist/yun/Button/index.css' Vue.component(Button.name,Button) </script> ``` ### 贡献组件 **I. 开发** 目前在`package.json`中声明了多个脚本模式,可以通过`npm run xxx`的方式进行运行,各个命令启动服务如下: ``` bash npm run dev:demo 启动demo的本地开发模式 npm run dev 启动组件库的本地开发模式 npm publish 发布更改到npm ``` **II. 测试** ```bash npm run unit 执行单元测试 npm test 执行所有测试 ``` **III. 构建** 构建demo页面: ``` bash npm run build:demo ``` demo构建后的文件在`dist/demo`目录下。 构建完整组件库代码: ``` bash npm run build ``` 完整组件库构建后的文件在`dist/yun`目录下。 **IV. 发布** 请提交[Pull Request](https://git-scm.com/docs/git-request-pull)。 ### 代码规范 请参考 [ESLint](http://eslint.org/) `standard` 规范进行书写,并执行`npm run lint`进行代码检查。 ### Tips 如果你使用的是Webstorm,请在运行`npm install`之前,在`Preferences | Editor | File Types | Ignore files and folders`中增加`node_modules`,避免循环依赖造成的死循环。