npm package: @landwind/lw-vue-plus
Description: landwind ele-plus components custom style
Author: landwind
Latest version: 1.0.2

# lw-vue-plus

## 介绍

> 基于 vue3 + element-plus + ts + vite5 二次封装组件 

<p align="center">
  <a href="https://github.com/vuejs/vue" target="_blank">
    <img src="https://img.shields.io/badge/vue-3.2.36-brightgreen.svg" alt="vue3">
  </a>
  <a href="https://gitee.com/Twtcer/lw-vue-plus/stargazers" target="_blank">
    <img src="https://gitee.com/Twtcer/lw-vue-plus/badge/star.svg?theme=dark" alt="lw-vue-plus">
  </a>
   <a href="https://github.com/Twtcer/lw-vue-plus/stargazers" target="_blank">
    <img src="https://img.shields.io/github/stars/Twtcer/lw-vue-plus.svg" alt="lw-vue-plus">
  </a>
   <a href="https://www.npmjs.com/package/@lw8/lw-vue-plus" target="_blank">
      <img alt="npm" src="https://img.shields.io/npm/v/@lw8/lw-vue-plus.svg" />
    </a>
</p>
 
## 安装

```shell
pnpm i @lw8/lw-vue-plus
```

## 全局注册

> ### 前提：须先全局注册Element-plus组件库后再注册此组件

```js
// 在main.js/main.ts中按下引入
import { createApp } from "vue";
import App from "./App.vue";
import ElementPlus from "element-plus";
import "element-plus/dist/index.css";
// import "element-plus/theme-chalk/dark/css-vars.css";
import locale from "element-plus/es/locale/lang/zh-cn";
// element-plus图标
import * as ElementPlusIconsVue from "@element-plus/icons-vue";
import LwVuePlus from '@landwind/lw-vue-plus'
import '@landwind/lw-vue-plus/lib/index.css'
const app = createApp(App)
// 注册所有图标
  for (const [key, component] of Object.entries(ElementPlusIconsVue)) {
    app.component(key, component);
  }
  // 注册ElementPlus
  app.use(ElementPlus, {
    locale // 语言设置
    // size: Cookies.get('size') || 'medium' // 尺寸设置
  });
app.use(LwVuePlus)
app.mount('#app')
```

## 按需引入

```js
// 在main.js中按下引入
import '@landwind/lw-vue-plus/lib/index.css'
// 单个.vue文件引入
<script setup lang="ts">
  import {TDetail, TForm} from "@landwind/lw-vue-plus"
</script>
```
## 全部组件如下
``` js
LwLayoutPage, // 布局页面
LwLayoutPageItem, // 布局页面子项
LwAdaptivePage, // 一屏组件（继承TTable 及 TQueryCondition 组件的所有属性、事件、插槽、方法）
LwQueryCondition, // 查询条件
LwTable, // 表格
LwForm, // 表单
LwSelectTable, // 下拉选择表格
LwSelect, // 下拉选择
LwDetail, // 详情
LwButton, // 防抖按钮
LwStepWizard, // 步骤条
LwTimerBtn, // 定时按钮
LwModuleForm, // 模块表单/详情
LwDatePicker, // 日期选择器
LwRadio, // 单选
LwCheckbox, // 多选
LwChart, // 图表
LwTabs // 标签页
```
 
## 组件类型智能提示

```js
// 需要在使用的项目的tsconfig.json文件中添加以下
compilerOptions：{
  "types": [
      "@landwind/lw-vue-plus/components.d.ts",
    ],
}

``` 
## 安装依赖
> ### 注意: node版本建议安装 [Node.js 16.x+](https://nodejs.org/en)、[pnpm 7.x+](https://github.com/pnpm/pnpm/)

```shell
npm install -g pnpm

pnpm i 

```

## 本地调试组件文档
> docs项目(文档demo示例)基于vue3+vite项目

```shell

pnpm docs:dev

```

# 感谢

## 贡献

<a href="https://github.com/Twtcer/lw-vue-plus/graphs/contributors">
  <img src="https://contrib.rocks/image?repo=Twtcer/lw-vue-plus" alt="contributors" />
</a>

 # 参考
- https://blog.csdn.net/cwin8951?type=blog
- [element-plus](https://github.com/element-plus/element-plus)

## Git 提交规范

- `ci`: ci 配置文件和脚本的变动;
- `chore`: 构建系统或辅助工具的变动;
- `fix`: 代码 BUG 修复;
- `feat`: 新功能;
- `perf`: 性能优化和提升;
- `refactor`: 仅仅是代码变动，既不是修复 BUG 也不是引入新功能;
- `style`: 代码格式调整，可能是空格、分号、缩进等等;
- `docs`: 文档变动;
- `test`: 补充缺失的测试用例或者修正现有的测试用例;
- `revert`: 回滚操作;


## npm发布流程
 登录npm 

```
npm login --registry https://registry.npmjs.org
```
 发布到npm

```
npm publish --registry https://registry.npmjs.org
```
撤销发布版本

```
# 撤销发布某个版本：package.json中对应version的版本
npm unpublish --force --registry https://registry.npmjs.org
```