# im-common

贵冶智能工厂前端公共组件核心库，拆分原有工程下的`src`下模块（不包括modules），通过LESS转换CSS、ES7转换ES5、其余资源整合而来

[![npm version](https://img.shields.io/npm/v/im-common.svg)](https://www.npmjs.com/package/im-common)
[![NPM downloads](http://img.shields.io/npm/dt/im-common.svg?style=flat)](https://npmjs.org/package/im-common)

## 1. 安装

```bash
$ npm install im-common --save
```
> 新拆分工程结构内置已经做好别名（alias）映射无需二次修改


## 2. 目录结构

```bash
.
└── src
    ├── components
    │   ├── AdvanceQryPanel
    │   ├── BtnsArea
    │   ├── ButtonRoleGroup
    │   ├── CheckBoxs
    │   ├── CheckTable
    │   ├── CheckGrid
    │   ├── DeleteModal
    │   ├── FileListPanel
    │   ├── FilesViewer
    │   ├── FilterCheckTable
    │   ├── FormList
    │   ├── Header
    │   ├── ImageUpload
    │   ├── MsgModal
    │   ├── NoData
    │   ├── PageJump
    │   ├── RefControl
    │   ├── SearchPanel
    │   ├── SearchRef
    │   ├── SmartEditor
    │   ├── Thermometer
    │   ├── TileGroup
    │   └── ToastModal
    ├── static
    │   ├── font
    │   ├── fonts
    │   │   └── utils
    │   ├── iconfontnew
    │   ├── images
    │   └── map
    │       ├── css
    │       ├── gis
    │       │   └── images
    │       └── js
    └── utils

36 directories
```
文件夹 | 说明
---|---|---
src | 源码文件夹，原有的整体目录
es | 转码后的ES5代码，包含css、images、fonts所有浏览器可直接识别文件

> 其他文件只是构建需要的配置文件

## 3. 开发

如果要修改本`src`文件夹内的资源，需要如下操作：

```bash
# 1. 安装依赖开发包
npm install

# 2. 执行构建
npm run es

```

最后就会产生`es`文件夹，就是我们要发布到`npm`仓库的代码

## 4. 发布

首先需要有该包的权限也就是 https://www.npmjs.com 注册用户和权限

产出后`es`文件夹后，在确保没有错误暴露出来后，就可以发布上线了，做如下步骤：

1. 修改`package.json`的`version`的版本（0.0.增1）
2. 执行 `npm publish` 来发布新版本

> 然后项目内更新版本下载最新即可完成更新


## 5. 开发调试

> 之前文档写的调试方式不正确，废弃，故使用下面原始Copy大法处理

### 注意im-common一定要和其他的模块在一个目录级别才可以

```bash
root
├── im-common
├── im-hse
├── im-bdm
└── im-am
```

1. 首先`npm install`
2. 修改src里面的代码后，运行`npm run es`转码
3. 准备调试复制代码到项目内，找到`package.json` 修改 `"copy_es": "gulp copy_es_to --name im-am",`，其中 `im-am`是我们要修改的模块名
4. 运行`npm run copy_es`完成复制即可

## 6. ChangeLog

版本 | 说明
---|---
0.0.26| 隐藏列个性化设置的缓存改为localStorage
0.0.25| checkGrid和Grid表有冲突，解决冲突
0.0.24| checkGrid加隐藏列的缓存并带有分页功能
0.0.23| checkTable加隐藏列的缓存，解决当以页面出现多表情况
0.0.22| checkTable加隐藏列的缓存
0.0.21| Error,Info增加自定义显示时间
0.0.20| 参照属性增加
0.0.19| request修改报错信息
0.0.18| CheckTable选中第一行就全选bug修复
0.0.17| 按钮权限修改&&CheckTable加入_disabled判断&&请求过期时间调整
0.0.16| 按钮权限修改
0.0.15| 增加公共打印方法
0.0.14| CheckTable调整，FormList调整，request报错信息调整
0.0.13| 调整index.less参照样式
0.0.12 | 补全开发文档
0.0.1~11 | 整合资源发布稳定可用版本
