commit 5d4a682c162776087b181bbe565220d082ee8ad7
Author: wangxiaowei <1121133807@qq.com>
Date: Fri Apr 18 17:00:38 2025 +0800
初始化仓库
diff --git a/App.vue b/App.vue
new file mode 100644
index 0000000..9e3ba92
--- /dev/null
+++ b/App.vue
@@ -0,0 +1,116 @@
+
+
+
\ No newline at end of file
diff --git a/api/app.js b/api/app.js
new file mode 100644
index 0000000..a9a01c9
--- /dev/null
+++ b/api/app.js
@@ -0,0 +1,17 @@
+import request from "@/utils/request";
+// import wechath5 from "@/utils/wechath5";
+import { client } from "@/utils/tools";
+
+export function getConfig() {
+ return request.get("index/config");
+}
+
+// 用户自定义分享
+export function userShare(params) {
+ return request.get("index/share", {
+ params: {
+ ...params,
+ client,
+ },
+ });
+}
\ No newline at end of file
diff --git a/api/store.js b/api/store.js
new file mode 100644
index 0000000..f26084e
--- /dev/null
+++ b/api/store.js
@@ -0,0 +1,171 @@
+import request from '@/utils/request'
+import {client} from '@/utils/tools'
+//获取首页数据接口
+export function getHome() {
+ return request.get('index/lists')
+}
+
+//获取菜单
+export function getMenu(data) {
+ return request.get('menu/lists', {
+ params: data,
+ });
+}
+
+//广告位
+export function getAdList(data) {
+ return request.get('ad_content/lists', {
+ params: data
+ });
+}
+
+// 购物车列表
+export function getCartList() {
+ return request.get('cart/lists')
+}
+
+
+//获取好物优选商品列表
+export function getBestList(data) {
+ return request.get('goods/getBestList', {
+ params: data
+ });
+}
+
+// 商品分类
+export function getCatrgory() {
+ return request.get('goods_category/lists');
+}
+
+
+//商品详情
+export function getGoodsDetail(data) {
+ return request.get('goods/getGoodsDetail', {
+ params: data
+ });
+}
+
+// 商品搜索
+
+export function getGoodsSearch(data) {
+ return request.get('goods/getGoodsList', {
+ params: data
+ });
+}
+//搜索页,热门搜索列表,和历史搜索列表
+
+export function getSearchpage(data) {
+ return request.get('goods/getSearchPage', {
+ params: data
+ });
+}
+// 清空历史搜索
+
+export function clearSearch() {
+ return request.get('goods/clearSearch');
+}
+
+//评价列表
+export function getCommentList(data) {
+ return request.get("goods_comment/lists", {
+ params: data
+ })
+}
+
+// 获取评价列表
+export function getOrderCommentList(data) {
+ return request.get("goods_comment/getOrderGoods", {
+ params: data
+ })
+}
+
+// 购物车数量更改
+export function changeGoodsCount(data) {
+ return request.post("cart/change", data)
+}
+
+// 单选/全选/店铺选择
+export function selectedOpt(data) {
+ return request.post("cart/selected", data)
+}
+
+// 删除商品
+export function deleteGoods(data) {
+ return request.post("cart/del", data);
+}
+
+//购物车选中状态
+export function changeCartSelect(data) {
+ return request.post('cart/selected', data)
+}
+
+//评价分类
+export function getCommentCategory(id) {
+ return request.get("/goods_comment/category", {
+ params: {
+ goods_id: id
+ }
+ })
+}
+
+//加入购物车
+
+export function addCart(data) {
+ return request.post('cart/add', data);
+}
+
+ //购物车数量
+
+export function getCartNum(params) {
+ return request.get("cart/num", {params});
+}
+
+
+//获取商品热搜榜单
+export function getHotGoods(data) {
+ return request.get("goods/getHostList", {params: data});
+}
+
+// 获取秒杀时间段
+export function getSeckillTime() {
+ return request.get("/seckill/seckillTime");
+}
+
+// 获取秒杀商品
+export function getSeckillGoods(params) {
+ return request.get("/seckill/seckillGoods", {params})
+}
+
+// 消息中心首页
+export function getMessageLists() {
+ return request.get("notice/index")
+}
+
+// 消息通知
+export function getNoticeLists(params) {
+ return request.get("notice/lists", {params})
+}
+
+
+//商品海报
+
+export function getPoster(data) {
+ return request.get("share/sharegoods", {
+ params: data
+ });
+}
+
+// 门店自提列表
+
+export function getStoreList(data) {
+ return request.get("selffetch_shop/lists", {
+ params: data
+ });
+}
+
+// 直播列表
+export function getLiveRoom(data) {
+ return request.get("live_room/lists", {
+ params: data
+ });
+}
diff --git a/api/user.js b/api/user.js
new file mode 100644
index 0000000..3717a11
--- /dev/null
+++ b/api/user.js
@@ -0,0 +1,394 @@
+// +----------------------------------------------------------------------
+// | likeshop开源商城系统
+// +----------------------------------------------------------------------
+// | 欢迎阅读学习系统程序代码,建议反馈是我们前进的动力
+// | gitee下载:https://gitee.com/likeshop_gitee
+// | github下载:https://github.com/likeshop-github
+// | 访问官网:https://www.likeshop.cn
+// | 访问社区:https://home.likeshop.cn
+// | 访问手册:http://doc.likeshop.cn
+// | 微信公众号:likeshop技术社区
+// | likeshop系列产品在gitee、github等公开渠道开源版本可免费商用,未经许可不能去除前后端官方版权标识
+// | likeshop系列产品收费版本务必购买商业授权,购买去版权授权后,方可去除前后端官方版权标识
+// | 禁止对系统程序代码以任何目的,任何形式的再发布
+// | likeshop团队版权所有并拥有最终解释权
+// +----------------------------------------------------------------------
+// | author: likeshop.cn.team
+// +----------------------------------------------------------------------
+import request from '../utils/request'
+import { client } from '@/utils/tools'
+//个人中心
+export function getUser() {
+ return request.get('user/center')
+}
+
+//用户领取优惠券
+export function getCoupon(id) {
+ return request.post('coupon/getCoupon', { id })
+}
+
+// 地址列表
+export function getAddressLists() {
+ return request.get('user_address/lists')
+}
+
+// 添加编辑地址
+export function editAddress(data) {
+ return request.post('user_address/update', data)
+}
+
+export function addAddress(data) {
+ return request.post('user_address/add', data)
+}
+
+// 删除地址
+export function delAddress(id) {
+ return request.post('user_address/del', { id })
+}
+
+// 获取单个地址
+export function getOneAddress(id) {
+ return request.get('user_address/detail', { params: { id } })
+}
+
+// 获取默认地址
+export function getDefaultAddress(id) {
+ return request.get('user_address/getDefault', { params: { id } })
+}
+
+// 设置默认地址
+export function setDefaultAddress(id) {
+ return request.post('user_address/setDefault', { id })
+}
+
+//传省市区字符串判读是否有code
+export function hasRegionCode(data) {
+ return request.post('user_address/handleRegion', data)
+}
+
+//我的优惠券
+export function getMyCoupon(data) {
+ return request.get('coupon/myCoupon', {
+ params: data
+ })
+}
+
+// 获取商品的收藏列表
+export function getCollectGoods(data) {
+ return request.get('collect/getCollectGoods', {
+ params: data
+ })
+}
+
+// 商品的增添取消收藏
+export function collectGoods(data) {
+ return request.post('collect/handleCollectGoods', data)
+}
+
+//删除订单
+export function delOrder(id) {
+ return request.post('order/del', { id })
+}
+//订单列表
+export function getOrderList(data) {
+ return request.get('order/lists', { params: data })
+}
+//订单详情
+export function getOrderDetail(id) {
+ return request.get('order/detail', { id })
+}
+
+//取消订单
+export function cancelOrder(id) {
+ return request.post('order/cancel', { id })
+}
+
+//物流
+export function orderTraces(id) {
+ return request.get('order/orderTraces', { params: { id } })
+}
+
+//确认收货
+export function confirmOrder(id) {
+ return request.post('order/confirm', { id })
+}
+
+// 充值模板
+export function rechargeTemplate() {
+ return request.get('recharge/rechargeTemplate')
+}
+
+// 获取售后列表
+export function getAfterSaleList(params) {
+ return request.get('after_sale/lists', { params })
+}
+
+// 申请售后
+export function applyAfterSale(data) {
+ return request.post('after_sale/add', data)
+}
+
+// 获取商品信息
+export function getGoodsInfo(params) {
+ return request.get('after_sale/goodsInfo', { params })
+}
+
+// 填写快递信息
+export function inputExpressInfo(data) {
+ return request.post('after_sale/express', data)
+}
+
+// 撤销申请
+export function cancelApply(data) {
+ return request.post('after_sale/cancel', data)
+}
+
+// 售后详情
+export function afterSaleDetail(params) {
+ return request.get('after_sale/detail', { params })
+}
+
+// 重新申请
+export function applyAgain(data) {
+ return request.post('after_sale/again', data)
+}
+
+// 账户明细 积分明细
+export function getAccountLog(params) {
+ return request.get('user/accountLog', { params })
+}
+
+//充值
+export function recharge(data) {
+ return request.post('recharge/recharge', data)
+}
+
+export function getRechargeRecord(params) {
+ return request.get('recharge/rechargeRecord', { params })
+}
+
+// 填写邀请码
+export function inputInviteCode(data) {
+ return request.post('distribution/code', data)
+}
+
+// 分销会员申请
+export function applyVip(data) {
+ return request.post('distribution/apple', data)
+}
+
+// 分销入口验证
+export function veryfiyDistribute() {
+ return request.post('distribution/check')
+}
+
+// 最新分销会员申请详情
+export function applyVipDetail() {
+ return request.post('distribution/appledetail')
+}
+
+// 邀请人信息
+export function getInviteInfo() {
+ return request.get('distribution/myleader')
+}
+
+// 获取评价信息
+export function getCommentInfo(data) {
+ return request.get('goods_comment/getGoods', { params: data })
+}
+
+// 分销主页
+export function getPromoteHome() {
+ return request.get('distribution/index')
+}
+
+// 分销订单列表
+export function getPromoteOrder(data) {
+ return request.get('distribution/order', { params: data })
+}
+
+//商品评价
+export function goodsComment(data) {
+ return request.post('goods_comment/addGoodsComment', data)
+}
+
+// 获取个人详情
+export function getUserInfo() {
+ return request.get('user/info')
+}
+
+// 设置个人信息
+export function setUserInfo(data) {
+ return request.post('user/setInfo', data)
+}
+
+// 更换手机号
+export function changeUserMobile(data) {
+ // #ifdef MP-WEIXIN
+ return request.post('user/getMobile', data)
+ // #endif
+ // #ifdef H5 || APP-PLUS
+ return request.post('user/changeMobile', { ...data, client })
+ // #endif
+}
+
+//会员中心
+export function getLevelList() {
+ return request.get('user_level/lists')
+}
+// 我的粉丝
+export function getUserFans(data) {
+ return request.get('user/fans', { params: data })
+}
+
+// 佣金提现
+export function applyWithdraw(data) {
+ return request.post('withdraw/apply', data)
+}
+
+// 提现记录列表
+export function getWithdrawRecords(params) {
+ return request.get('withdraw/records', { params })
+}
+
+// 提现详情
+export function getWithdrawDetail(params) {
+ return request.get('withdraw/info', { params })
+}
+
+// 提现页信息
+export function getWithdrawConfig() {
+ return request.get('withdraw/config')
+}
+
+// 月度账单
+export function getMonthBill(params) {
+ return request.get('distribution/monthbill', { params })
+}
+
+// 月度账单明细
+export function getMonthOrderDetail(params) {
+ return request.get('distribution/monthDetail', { params })
+}
+
+// 邀请海报
+export function getInviteBanner(data) {
+ return request.get('share/userPoster', { params: data })
+}
+
+// 用户钱包
+export function getWallet() {
+ return request.get('user/myWallet')
+}
+
+// 获取签到列表
+export function getSignList() {
+ return request.get('sign/lists')
+}
+
+// 签到
+export function userSign() {
+ return request.get('sign/sign')
+}
+
+// 获取签到规则
+export function getSignRule() {
+ return request.get('sign/rule')
+}
+
+// 退出登录
+export function userLogout(data) {
+ return request.post('account/logout', data)
+}
+
+// 获取抽奖配置
+export function getPrize(data) {
+ return request.get('Luckdraw/prize', {
+ params: data
+ })
+}
+
+// 抽奖记录
+export function getUserRecord(data) {
+ return request.get('Luckdraw/record', {
+ params: data
+ })
+}
+
+// 抽奖
+export function userLottery(data) {
+ return request.get('Luckdraw/draw', {
+ params: data
+ })
+}
+
+// 中奖名单
+export function luckyDrawWinningList(data) {
+ return request.get('Luckdraw/winList', {
+ params: data
+ })
+}
+
+//更新微信信息
+
+export function setWechatInfo(data) {
+ return request.post('user/setWechatInfo', data)
+}
+
+//设置交易密码
+export function setPassword(data) {
+ return request.post('user/setPayPassword', data)
+}
+//修改支付密码
+export function changePayPassword(data) {
+ return request.post('user/changePayPassword', data)
+}
+//判断是否设置交易密码
+export function hasPayPassword() {
+ return request.get('user/hasPayPassword')
+}
+
+//会员转账
+export function transfer(data) {
+ return request.post('user/transfer', data)
+}
+
+//最近转账会员
+export function getTransferRecent() {
+ return request.get('user/transferRecent')
+}
+
+//会员转账记录
+export function transferRecord(params) {
+ return request.get('user/transferRecord', { params })
+}
+
+//发送验证码
+export function send(data) {
+ return request.post('user/send', data)
+}
+
+// 找回密码
+export function retrievePayPassword(data) {
+ return request.post('user/retrievePayPassword', data)
+}
+
+//获取会员信息
+export function transferToInfo(params) {
+ return request.get('user/transferToInfo', { params })
+}
+
+// 获取微信小程序码-生成海报需使用
+export function apiDistributionPoster() {
+ return request.get('distribution/getPoster')
+}
+
+// 资质信息
+export function getCopyright() {
+ return request.get('index/copyright')
+}
+
+// 绑定微信
+export function bindOawechat(data) {
+ return request.post('account/oaAuthLogin', data)
+}
diff --git a/components/uview-ui2/LICENSE b/components/uview-ui2/LICENSE
new file mode 100644
index 0000000..4db40ef
--- /dev/null
+++ b/components/uview-ui2/LICENSE
@@ -0,0 +1,21 @@
+MIT License
+
+Copyright (c) 2023 www.uviewui.com
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git a/components/uview-ui2/README.md b/components/uview-ui2/README.md
new file mode 100644
index 0000000..c78ff47
--- /dev/null
+++ b/components/uview-ui2/README.md
@@ -0,0 +1,66 @@
+
+
+
+uView 2.0
+多平台快速开发的UI框架
+
+[](https://github.com/umicro/uView2.0)
+[](https://github.com/umicro/uView2.0)
+[](https://github.com/umicro/uView2.0/issues)
+[](https://uviewui.com)
+[](https://gitee.com/umicro/uView2.0/releases)
+[](https://en.wikipedia.org/wiki/MIT_License)
+
+## 说明
+
+uView UI,是[uni-app](https://uniapp.dcloud.io/)全面兼容nvue的uni-app生态框架,全面的组件和便捷的工具会让您信手拈来,如鱼得水
+
+## [官方文档:https://uviewui.com](https://uviewui.com)
+
+
+## 预览
+
+您可以通过**微信**扫码,查看最佳的演示效果。
+
+
+
+
+
+## 链接
+
+- [官方文档](https://www.uviewui.com/)
+- [更新日志](https://www.uviewui.com/components/changelog.html)
+- [升级指南](https://www.uviewui.com/components/changeGuide.html)
+- [关于我们](https://www.uviewui.com/cooperation/about.html)
+
+## 交流反馈
+
+欢迎加入我们的QQ群交流反馈:[点此跳转](https://www.uviewui.com/components/addQQGroup.html)
+
+## 关于PR
+
+> 我们非常乐意接受各位的优质PR,但在此之前我希望您了解uView2.0是一个需要兼容多个平台的(小程序、h5、ios app、android app)包括nvue页面、vue页面。
+> 所以希望在您修复bug并提交之前尽可能的去这些平台测试一下兼容性。最好能携带测试截图以方便审核。非常感谢!
+
+## 安装
+
+#### **uni-app插件市场链接** —— [https://ext.dcloud.net.cn/plugin?id=1593](https://ext.dcloud.net.cn/plugin?id=1593)
+
+请通过[官网安装文档](https://www.uviewui.com/components/install.html)了解更详细的内容
+
+## 快速上手
+
+请通过[快速上手](https://uviewui.com/components/quickstart.html)了解更详细的内容
+
+## 使用方法
+配置easycom规则后,自动按需引入,无需`import`组件,直接引用即可。
+
+```html
+
+
+
+```
+
+## 版权信息
+uView遵循[MIT](https://en.wikipedia.org/wiki/MIT_License)开源协议,意味着您无需支付任何费用,也无需授权,即可将uView应用到您的产品中。
+
diff --git a/components/uview-ui2/changelog.md b/components/uview-ui2/changelog.md
new file mode 100644
index 0000000..73bb66d
--- /dev/null
+++ b/components/uview-ui2/changelog.md
@@ -0,0 +1,376 @@
+## 2.0.38(2024-06-12)
+插件市场处理
+## 2.0.37(2024-03-17)
+# uView2.0重磅发布,利剑出鞘,一统江湖
+
+1. 修复表单校验`trigger`触发器参数无效问题
+2. 修复`u-input`组件的`password`属性在动态切换为`false`时失效的问题
+3. 添加微信小程序用户同意隐私协议事件回调
+4. 修复支付宝小程序picker样式问题
+5. `u-modal`添加`duration`字段控制动画过度时间
+6. 修复`picker` `lastIndex`异常导致的`column`异常问题
+7. `tabs`增加长按事件支持
+8. 修复`u-avatar` `square`属性在小程序`open-data`下无效问题
+9. 其他一些修复
+## 2.0.36(2023-03-27)
+# uView2.0重磅发布,利剑出鞘,一统江湖
+
+1. 重构`deepClone` & `deepMerge`方法
+2. 其他优化
+## 2.0.34(2022-09-24)
+# uView2.0重磅发布,利剑出鞘,一统江湖
+
+1. `u-input`、`u-textarea`增加`ignoreCompositionEvent`属性
+2. 修复`route`方法调用可能报错的问题
+3. 修复`u-no-network`组件`z-index`无效的问题
+4. 修复`textarea`组件在h5上confirmType=""报错的问题
+5. `u-rate`适配`nvue`
+6. 优化验证手机号码的正则表达式(根据工信部发布的《电信网编号计划(2017年版)》进行修改。)
+7. `form-item`添加`labelPosition`属性
+8. `u-calendar`修复`maxDate`设置为当前日期,并且当前时间大于08:00时无法显示日期列表的问题 (#724)
+9. `u-radio`增加一个默认插槽用于自定义修改label内容 (#680)
+10. 修复`timeFormat`函数在safari重的兼容性问题 (#664)
+## 2.0.33(2022-06-17)
+# uView2.0重磅发布,利剑出鞘,一统江湖
+
+1. 修复`loadmore`组件`lineColor`类型错误问题
+2. 修复`u-parse`组件`imgtap`、`linktap`不生效问题
+## 2.0.32(2022-06-16)
+# uView2.0重磅发布,利剑出鞘,一统江湖
+1. `u-loadmore`新增自定义颜色、虚/实线
+2. 修复`u-swiper-action`组件部分平台不能上下滑动的问题
+3. 修复`u-list`回弹问题
+4. 修复`notice-bar`组件动画在低端安卓机可能会抖动的问题
+5. `u-loading-page`添加控制图标大小的属性`iconSize`
+6. 修复`u-tooltip`组件`color`参数不生效的问题
+7. 修复`u--input`组件使用`blur`事件输出为`undefined`的bug
+8. `u-code-input`组件新增键盘弹起时,是否自动上推页面参数`adjustPosition`
+9. 修复`image`组件`load`事件无回调对象问题
+10. 修复`button`组件`loadingSize`设置无效问题
+10. 其他修复
+## 2.0.31(2022-04-19)
+# uView2.0重磅发布,利剑出鞘,一统江湖
+
+1. 修复`upload`在`vue`页面上传成功后没有成功标志的问题
+2. 解决演示项目中微信小程序模拟上传图片一直出于上传中问题
+3. 修复`u-code-input`组件在`nvue`页面编译到`app`平台上光标异常问题(`app`去除此功能)
+4. 修复`actionSheet`组件标题关闭按钮点击事件名称错误的问题
+5. 其他修复
+## 2.0.30(2022-04-04)
+# uView2.0重磅发布,利剑出鞘,一统江湖
+
+1. `u-rate`增加`readonly`属性
+2. `tabs`滑块支持设置背景图片
+3. 修复`u-subsection` `mode`为`subsection`时,滑块样式不正确的问题
+4. `u-code-input`添加光标效果动画
+5. 修复`popup`的`open`事件不触发
+6. 修复`u-flex-column`无效的问题
+7. 修复`u-datetime-picker`索引在特定场合异常问题
+8. 修复`u-datetime-picker`最小时间字符串模板错误问题
+9. `u-swiper`添加`m3u8`验证
+10. `u-swiper`修改判断image和video逻辑
+11. 修复`swiper`无法使用本地图片问题,增加`type`参数
+12. 修复`u-row-notice`格式错误问题
+13. 修复`u-switch`组件当`unit`为`rpx`时,`nodeStyle`消失的问题
+14. 修复`datetime-picker`组件`showToolbar`与`visibleItemCount`属性无效的问题
+15. 修复`upload`组件条件编译位置判断错误,导致`previewImage`属性设置为`false`时,整个组件都会被隐藏的问题
+16. 修复`u-checkbox-group`设置`shape`属性无效的问题
+17. 修复`u-upload`的`capture`传入字符串的时候不生效的问题
+18. 修复`u-action-sheet`组件,关闭事件逻辑错误的问题
+19. 修复`u-list`触顶事件的触发错误的问题
+20. 修复`u-text`只有手机号可拨打的问题
+21. 修复`u-textarea`不能换行的问题
+22. 其他修复
+## 2.0.29(2022-03-13)
+# uView2.0重磅发布,利剑出鞘,一统江湖
+
+1. 修复`u--text`组件设置`decoration`属性未生效的问题
+2. 修复`u-datetime-picker`使用`formatter`后返回值不正确
+3. 修复`u-datetime-picker` `intercept` 可能为undefined
+4. 修复已设置单位 uni..config.unit = 'rpx'时,线型指示器 `transform` 的位置翻倍,导致指示器超出宽度
+5. 修复mixin中bem方法生成的类名在支付宝和字节小程序中失效
+6. 修复默认值传值为空的时候,打开`u-datetime-picker`报错,不能选中第一列时间的bug
+7. 修复`u-datetime-picker`使用`formatter`后返回值不正确
+8. 修复`u-image`组件`loading`无效果的问题
+9. 修复`config.unit`属性设为`rpx`时,导航栏占用高度不足导致塌陷的问题
+10. 修复`u-datetime-picker`组件`itemHeight`无效问题
+11. 其他修复
+## 2.0.28(2022-02-22)
+# uView2.0重磅发布,利剑出鞘,一统江湖
+
+1. search组件新增searchIconSize属性
+2. 兼容Safari/Webkit中传入时间格式如2022-02-17 12:00:56
+3. 修复text value.js 判断日期出format错误问题
+4. priceFormat格式化金额出现精度错误
+5. priceFormat在部分情况下出现精度损失问题
+6. 优化表单rules提示
+7. 修复avatar组件src为空时,展示状态不对
+8. 其他修复
+## 2.0.27(2022-01-28)
+# uView2.0重磅发布,利剑出鞘,一统江湖
+
+1.样式修复
+## 2.0.26(2022-01-28)
+# uView2.0重磅发布,利剑出鞘,一统江湖
+
+1.样式修复
+## 2.0.25(2022-01-27)
+# uView2.0重磅发布,利剑出鞘,一统江湖
+
+1. 修复text组件mode=price时,可能会导致精度错误的问题
+2. 添加$u.setConfig()方法,可设置uView内置的config, props, zIndex, color属性,详见:[修改uView内置配置方案](https://uviewui.com/components/setting.html#%E9%BB%98%E8%AE%A4%E5%8D%95%E4%BD%8D%E9%85%8D%E7%BD%AE)
+3. 优化form组件在errorType=toast时,如果输入错误页面会有抖动的问题
+4. 修复$u.addUnit()对配置默认单位可能无效的问题
+## 2.0.24(2022-01-25)
+# uView2.0重磅发布,利剑出鞘,一统江湖
+
+1. 修复swiper在current指定非0时缩放有误
+2. 修复u-icon添加stop属性的时候报错
+3. 优化遗留的通过正则判断rpx单位的问题
+4. 优化Layout布局 vue使用gutter时,会超出固定区域
+5. 优化search组件高度单位问题(rpx -> px)
+6. 修复u-image slot 加载和错误的图片失去了高度
+7. 修复u-index-list中footer插槽与header插槽存在性判断错误
+8. 修复部分机型下u-popup关闭时会闪烁
+9. 修复u-image在nvue-app下失去宽高
+10. 修复u-popup运行报错
+11. 修复u-tooltip报错
+12. 修复box-sizing在app下的警告
+13. 修复u-navbar在小程序中报运行时错误
+14. 其他修复
+## 2.0.23(2022-01-24)
+# uView2.0重磅发布,利剑出鞘,一统江湖
+
+1. 修复image组件在hx3.3.9的nvue下可能会显示异常的问题
+2. 修复col组件gutter参数带rpx单位处理不正确的问题
+3. 修复text组件单行时无法显示省略号的问题
+4. navbar添加titleStyle参数
+5. 升级到hx3.3.9可消除nvue下控制台样式警告的问题
+## 2.0.22(2022-01-19)
+# uView2.0重磅发布,利剑出鞘,一统江湖
+
+1. $u.page()方法优化,避免在特殊场景可能报错的问题
+2. picker组件添加immediateChange参数
+3. 新增$u.pages()方法
+## 2.0.21(2022-01-19)
+# uView2.0重磅发布,利剑出鞘,一统江湖
+
+1. 优化:form组件在用户设置rules的时候提示用户model必传
+2. 优化遗留的通过正则判断rpx单位的问题
+3. 修复微信小程序环境中tabbar组件开启safeAreaInsetBottom属性后,placeholder高度填充不正确
+4. 修复swiper在current指定非0时缩放有误
+5. 修复u-icon添加stop属性的时候报错
+6. 修复upload组件在accept=all的时候没有作用
+7. 修复在text组件mode为phone时call属性无效的问题
+8. 处理u-form clearValidate方法
+9. 其他修复
+## 2.0.20(2022-01-14)
+# uView2.0重磅发布,利剑出鞘,一统江湖
+
+1. 修复calendar默认会选择一个日期,如果直接点确定的话,无法取到值的问题
+2. 修复Slider缺少disabled props 还有注释
+3. 修复u-notice-bar点击事件无法拿到index索引值的问题
+4. 修复u-collapse-item在vue文件下,app端自定义插槽不生效的问题
+5. 优化头像为空时显示默认头像
+6. 修复图片地址赋值后判断加载状态为完成问题
+7. 修复日历滚动到默认日期月份区域
+8. search组件暴露点击左边icon事件
+9. 修复u-form clearValidate方法不生效
+10. upload h5端增加返回文件参数(文件的name参数)
+11. 处理upload选择文件后url为blob类型无法预览的问题
+12. u-code-input 修复输入框没有往左移出一半屏幕
+13. 修复Upload上传 disabled为true时,控制台报hoverClass类型错误
+14. 临时处理ios app下grid点击坍塌问题
+15. 其他修复
+## 2.0.19(2021-12-29)
+# uView2.0重磅发布,利剑出鞘,一统江湖
+
+1. 优化微信小程序包体积可在微信中预览,请升级HbuilderX3.3.4,同时在“运行->运行到小程序模拟器”中勾选“运行时是否压缩代码”
+2. 优化微信小程序setData性能,处理某些方法如$u.route()无法在模板中使用的问题
+3. navbar添加autoBack参数
+4. 允许avatar组件的事件冒泡
+5. 修复cell组件报错问题
+6. 其他修复
+## 2.0.18(2021-12-28)
+# uView2.0重磅发布,利剑出鞘,一统江湖
+
+1. 修复app端编译报错问题
+2. 重新处理微信小程序端setData过大的性能问题
+3. 修复边框问题
+4. 修复最大最小月份不大于0则没有数据出现的问题
+5. 修复SwipeAction微信小程序端无法上下滑动问题
+6. 修复input的placeholder在小程序端默认显示为true问题
+7. 修复divider组件click事件无效问题
+8. 修复u-code-input maxlength 属性值为 String 类型时显示异常
+9. 修复当 grid只有 1到2时 在小程序端algin设置无效的问题
+10. 处理form-item的label为top时,取消错误提示的左边距
+11. 其他修复
+## 2.0.17(2021-12-26)
+## uView正在参与开源中国的“年度最佳项目”评选,之前投过票的现在也可以投票,恳请同学们投一票,[点此帮助uView](https://www.oschina.net/project/top_cn_2021/?id=583)
+
+# uView2.0重磅发布,利剑出鞘,一统江湖
+
+1. 解决HBuilderX3.3.3.20211225版本导致的样式问题
+2. calendar日历添加monthNum参数
+3. navbar添加center slot
+## 2.0.16(2021-12-25)
+## uView正在参与开源中国的“年度最佳项目”评选,之前投过票的现在也可以投票,恳请同学们投一票,[点此帮助uView](https://www.oschina.net/project/top_cn_2021/?id=583)
+
+# uView2.0重磅发布,利剑出鞘,一统江湖
+
+1. 解决微信小程序setData性能问题
+2. 修复count-down组件change事件不触发问题
+## 2.0.15(2021-12-21)
+## uView正在参与开源中国的“年度最佳项目”评选,之前投过票的现在也可以投票,恳请同学们投一票,[点此帮助uView](https://www.oschina.net/project/top_cn_2021/?id=583)
+
+# uView2.0重磅发布,利剑出鞘,一统江湖
+
+1. 修复Cell单元格titleWidth无效
+2. 修复cheakbox组件ischecked不更新
+3. 修复keyboard是否显示"."按键默认值问题
+4. 修复number-keyboard是否显示键盘的"."符号问题
+5. 修复Input输入框 readonly无效
+6. 修复u-avatar 导致打包app、H5时候报错问题
+7. 修复Upload上传deletable无效
+8. 修复upload当设置maxSize时无效的问题
+9. 修复tabs lineWidth传入带单位的字符串的时候偏移量计算错误问题
+10. 修复rate组件在有padding的view内,显示的星星位置和可触摸区域不匹配,无法正常选中星星
+## 2.0.13(2021-12-14)
+## [点击加群交流反馈:364463526](https://jq.qq.com/?_chanwv=1027&k=mCxS3TGY)
+
+# uView2.0重磅发布,利剑出鞘,一统江湖
+
+1. 修复配置默认单位为rpx可能会导致自定义导航栏高度异常的问题
+## 2.0.12(2021-12-14)
+## [点击加群交流反馈:364463526](https://jq.qq.com/?_chanwv=1027&k=mCxS3TGY)
+
+# uView2.0重磅发布,利剑出鞘,一统江湖
+
+1. 修复tabs组件在vue环境下划线消失的问题
+2. 修复upload组件在安卓小程序无法选择视频的问题
+3. 添加uni.$u.config.unit配置,用于配置参数默认单位,详见:[默认单位配置](https://www.uviewui.com/components/setting.html#%E9%BB%98%E8%AE%A4%E5%8D%95%E4%BD%8D%E9%85%8D%E7%BD%AE)
+4. 修复textarea组件在没绑定v-model时,字符统计不生效问题
+5. 修复nvue下控制是否出现滚动条失效问题
+## 2.0.11(2021-12-13)
+## [点击加群交流反馈:364463526](https://jq.qq.com/?_chanwv=1027&k=mCxS3TGY)
+
+# uView2.0重磅发布,利剑出鞘,一统江湖
+
+1. text组件align参数无效的问题
+2. subsection组件添加keyName参数
+3. upload组件无法判断[Object file]类型的问题
+4. 处理notify层级过低问题
+5. codeInput组件添加disabledDot参数
+6. 处理actionSheet组件round参数无效的问题
+7. calendar组件添加round参数用于控制圆角值
+8. 处理swipeAction组件在vue环境下默认被打开的问题
+9. button组件的throttleTime节流参数无效的问题
+10. 解决u-notify手动关闭方法close()无效的问题
+11. input组件readonly不生效问题
+12. tag组件type参数为info不生效问题
+## 2.0.10(2021-12-08)
+## [点击加群交流反馈:364463526](https://jq.qq.com/?_chanwv=1027&k=mCxS3TGY)
+
+# uView2.0重磅发布,利剑出鞘,一统江湖
+
+1. 修复button sendMessagePath属性不生效
+2. 修复DatetimePicker选择器title无效
+3. 修复u-toast设置loading=true不生效
+4. 修复u-text金额模式传0报错
+5. 修复u-toast组件的icon属性配置不生效
+6. button的icon在特殊场景下的颜色优化
+7. IndexList优化,增加#
+## 2.0.9(2021-12-01)
+## [点击加群交流反馈:232041042](https://jq.qq.com/?_wv=1027&k=KnbeceDU)
+
+# uView2.0重磅发布,利剑出鞘,一统江湖
+
+1. 优化swiper的height支持100%值(仅vue有效),修复嵌入视频时click事件无法触发的问题
+2. 优化tabs组件对list值为空的判断,或者动态变化list时重新计算相关尺寸的问题
+3. 优化datetime-picker组件逻辑,让其后续打开的默认值为上一次的选中值,需要通过v-model绑定值才有效
+4. 修复upload内嵌在其他组件中,选择图片可能不会换行的问题
+## 2.0.8(2021-12-01)
+## [点击加群交流反馈:232041042](https://jq.qq.com/?_wv=1027&k=KnbeceDU)
+
+# uView2.0重磅发布,利剑出鞘,一统江湖
+
+1. 修复toast的position参数无效问题
+2. 处理input在ios nvue上无法获得焦点的问题
+3. avatar-group组件添加extraValue参数,让剩余展示数量可手动控制
+4. tabs组件添加keyName参数用于配置从对象中读取的键名
+5. 处理text组件名字脱敏默认配置无效的问题
+6. 处理picker组件item文本太长换行问题
+## 2.0.7(2021-11-30)
+## [点击加群交流反馈:232041042](https://jq.qq.com/?_wv=1027&k=KnbeceDU)
+
+# uView2.0重磅发布,利剑出鞘,一统江湖
+
+1. 修复radio和checkbox动态改变v-model无效的问题。
+2. 优化form规则validator在微信小程序用法
+3. 修复backtop组件mode参数在微信小程序无效的问题
+4. 处理Album的previewFullImage属性无效的问题
+5. 处理u-datetime-picker组件mode='time'在选择改变时间时,控制台报错的问题
+## 2.0.6(2021-11-27)
+## [点击加群交流反馈:232041042](https://jq.qq.com/?_wv=1027&k=KnbeceDU)
+
+# uView2.0重磅发布,利剑出鞘,一统江湖
+
+1. 处理tag组件在vue下边框无效的问题。
+2. 处理popup组件圆角参数可能无效的问题。
+3. 处理tabs组件lineColor参数可能无效的问题。
+4. propgress组件在值很小时,显示异常的问题。
+## 2.0.5(2021-11-25)
+## [点击加群交流反馈:232041042](https://jq.qq.com/?_wv=1027&k=KnbeceDU)
+
+# uView2.0重磅发布,利剑出鞘,一统江湖
+
+1. calendar在vue下显示异常问题。
+2. form组件labelPosition和errorType参数无效的问题
+3. input组件inputAlign无效的问题
+4. 其他一些修复
+## 2.0.4(2021-11-23)
+## [点击加群交流反馈:232041042](https://jq.qq.com/?_wv=1027&k=KnbeceDU)
+
+# uView2.0重磅发布,利剑出鞘,一统江湖
+
+0. input组件缺失@confirm事件,以及subfix和prefix无效问题
+1. component.scss文件样式在vue下干扰全局布局问题
+2. 修复subsection在vue环境下表现异常的问题
+3. tag组件的bgColor等参数无效的问题
+4. upload组件不换行的问题
+5. 其他的一些修复处理
+## 2.0.3(2021-11-16)
+## [点击加群交流反馈:1129077272](https://jq.qq.com/?_wv=1027&k=KnbeceDU)
+
+# uView2.0重磅发布,利剑出鞘,一统江湖
+
+1. uView2.0已实现全面兼容nvue
+2. uView2.0对1.x进行了架构重构,细节和性能都有极大提升
+3. 目前uView2.0为公测阶段,相关细节可能会有变动
+4. 我们写了一份与1.x的对比指南,详见[对比1.x](https://www.uviewui.com/components/diff1.x.html)
+5. 处理modal的confirm回调事件拼写错误问题
+6. 处理input组件@input事件参数错误问题
+7. 其他一些修复
+## 2.0.2(2021-11-16)
+## [点击加群交流反馈:1129077272](https://jq.qq.com/?_wv=1027&k=KnbeceDU)
+
+# uView2.0重磅发布,利剑出鞘,一统江湖
+
+1. uView2.0已实现全面兼容nvue
+2. uView2.0对1.x进行了架构重构,细节和性能都有极大提升
+3. 目前uView2.0为公测阶段,相关细节可能会有变动
+4. 我们写了一份与1.x的对比指南,详见[对比1.x](https://www.uviewui.com/components/diff1.x.html)
+5. 修复input组件formatter参数缺失问题
+6. 优化loading-icon组件的scss写法问题,防止不兼容新版本scss
+## 2.0.0(2020-11-15)
+## [点击加群交流反馈:1129077272](https://jq.qq.com/?_wv=1027&k=KnbeceDU)
+
+# uView2.0重磅发布,利剑出鞘,一统江湖
+
+1. uView2.0已实现全面兼容nvue
+2. uView2.0对1.x进行了架构重构,细节和性能都有极大提升
+3. 目前uView2.0为公测阶段,相关细节可能会有变动
+4. 我们写了一份与1.x的对比指南,详见[对比1.x](https://www.uviewui.com/components/diff1.x.html)
+5. 修复input组件formatter参数缺失问题
+
+
diff --git a/components/uview-ui2/components/u--form/u--form.vue b/components/uview-ui2/components/u--form/u--form.vue
new file mode 100644
index 0000000..d534ece
--- /dev/null
+++ b/components/uview-ui2/components/u--form/u--form.vue
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
diff --git a/components/uview-ui2/components/u--image/u--image.vue b/components/uview-ui2/components/u--image/u--image.vue
new file mode 100644
index 0000000..21b7ab1
--- /dev/null
+++ b/components/uview-ui2/components/u--image/u--image.vue
@@ -0,0 +1,47 @@
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/components/uview-ui2/components/u--input/u--input.vue b/components/uview-ui2/components/u--input/u--input.vue
new file mode 100644
index 0000000..1e58b01
--- /dev/null
+++ b/components/uview-ui2/components/u--input/u--input.vue
@@ -0,0 +1,73 @@
+
+ $emit('blur', e)"
+ @keyboardheightchange="$emit('keyboardheightchange')"
+ @change="e => $emit('change', e)"
+ @input="e => $emit('input', e)"
+ @confirm="e => $emit('confirm', e)"
+ @clear="$emit('clear')"
+ @click="$emit('click')"
+ >
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/components/uview-ui2/components/u--text/u--text.vue b/components/uview-ui2/components/u--text/u--text.vue
new file mode 100644
index 0000000..44ee52a
--- /dev/null
+++ b/components/uview-ui2/components/u--text/u--text.vue
@@ -0,0 +1,44 @@
+
+
+
+
+
diff --git a/components/uview-ui2/components/u--textarea/u--textarea.vue b/components/uview-ui2/components/u--textarea/u--textarea.vue
new file mode 100644
index 0000000..f4df0b9
--- /dev/null
+++ b/components/uview-ui2/components/u--textarea/u--textarea.vue
@@ -0,0 +1,48 @@
+
+ $emit('focus')"
+ @blur="e => $emit('blur')"
+ @linechange="e => $emit('linechange', e)"
+ @confirm="e => $emit('confirm')"
+ @input="e => $emit('input', e)"
+ @keyboardheightchange="e => $emit('keyboardheightchange')"
+ >
+
+
+
diff --git a/components/uview-ui2/components/u-action-sheet/props.js b/components/uview-ui2/components/u-action-sheet/props.js
new file mode 100644
index 0000000..e96e04f
--- /dev/null
+++ b/components/uview-ui2/components/u-action-sheet/props.js
@@ -0,0 +1,54 @@
+export default {
+ props: {
+ // 操作菜单是否展示 (默认false)
+ show: {
+ type: Boolean,
+ default: uni.$u.props.actionSheet.show
+ },
+ // 标题
+ title: {
+ type: String,
+ default: uni.$u.props.actionSheet.title
+ },
+ // 选项上方的描述信息
+ description: {
+ type: String,
+ default: uni.$u.props.actionSheet.description
+ },
+ // 数据
+ actions: {
+ type: Array,
+ default: uni.$u.props.actionSheet.actions
+ },
+ // 取消按钮的文字,不为空时显示按钮
+ cancelText: {
+ type: String,
+ default: uni.$u.props.actionSheet.cancelText
+ },
+ // 点击某个菜单项时是否关闭弹窗
+ closeOnClickAction: {
+ type: Boolean,
+ default: uni.$u.props.actionSheet.closeOnClickAction
+ },
+ // 处理底部安全区(默认true)
+ safeAreaInsetBottom: {
+ type: Boolean,
+ default: uni.$u.props.actionSheet.safeAreaInsetBottom
+ },
+ // 小程序的打开方式
+ openType: {
+ type: String,
+ default: uni.$u.props.actionSheet.openType
+ },
+ // 点击遮罩是否允许关闭 (默认true)
+ closeOnClickOverlay: {
+ type: Boolean,
+ default: uni.$u.props.actionSheet.closeOnClickOverlay
+ },
+ // 圆角值
+ round: {
+ type: [Boolean, String, Number],
+ default: uni.$u.props.actionSheet.round
+ }
+ }
+}
diff --git a/components/uview-ui2/components/u-action-sheet/u-action-sheet.vue b/components/uview-ui2/components/u-action-sheet/u-action-sheet.vue
new file mode 100644
index 0000000..26d5d8d
--- /dev/null
+++ b/components/uview-ui2/components/u-action-sheet/u-action-sheet.vue
@@ -0,0 +1,278 @@
+
+
+
+
+
+ {{description}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{cancelText}}
+
+
+
+
+
+
+
+
diff --git a/components/uview-ui2/components/u-album/props.js b/components/uview-ui2/components/u-album/props.js
new file mode 100644
index 0000000..75cdb37
--- /dev/null
+++ b/components/uview-ui2/components/u-album/props.js
@@ -0,0 +1,59 @@
+export default {
+ props: {
+ // 图片地址,Array|Array