diff --git a/model/体系结构/体系结构逻辑视图3.png b/model/体系结构/体系结构逻辑视图3.png new file mode 100644 index 0000000..65a5788 Binary files /dev/null and b/model/体系结构/体系结构逻辑视图3.png differ diff --git a/model/数据设计/数据模型.png b/model/数据设计/数据模型.png new file mode 100644 index 0000000..c08fc21 Binary files /dev/null and b/model/数据设计/数据模型.png differ diff --git a/src/map/.eslintrc.js b/src/map/.eslintrc.js new file mode 100644 index 0000000..115cc02 --- /dev/null +++ b/src/map/.eslintrc.js @@ -0,0 +1,31 @@ +/* + * Eslint config file + * Documentation: https://eslint.org/docs/user-guide/configuring/ + * Install the Eslint extension before using this feature. + */ +module.exports = { + env: { + es6: true, + browser: true, + node: true, + }, + ecmaFeatures: { + modules: true, + }, + parserOptions: { + ecmaVersion: 2018, + sourceType: 'module', + }, + globals: { + wx: true, + App: true, + Page: true, + getCurrentPages: true, + getApp: true, + Component: true, + requirePlugin: true, + requireMiniProgram: true, + }, + // extends: 'eslint:recommended', + rules: {}, +} diff --git a/src/map/README.md b/src/map/README.md new file mode 100644 index 0000000..e097b0c --- /dev/null +++ b/src/map/README.md @@ -0,0 +1,12 @@ +# 云开发 quickstart + +这是云开发的快速启动指引,其中演示了如何上手使用云开发的三大基础能力: + +- 数据库:一个既可在小程序前端操作,也能在云函数中读写的 JSON 文档型数据库 +- 文件存储:在小程序前端直接上传/下载云端文件,在云开发控制台可视化管理 +- 云函数:在云端运行的代码,微信私有协议天然鉴权,开发者只需编写业务逻辑代码 + +## 参考文档 + +- [云开发文档](https://developers.weixin.qq.com/miniprogram/dev/wxcloud/basis/getting-started.html) + diff --git a/src/map/cloud/useroption/config.json b/src/map/cloud/useroption/config.json new file mode 100644 index 0000000..5ecc33e --- /dev/null +++ b/src/map/cloud/useroption/config.json @@ -0,0 +1,6 @@ +{ + "permissions": { + "openapi": [ + ] + } +} \ No newline at end of file diff --git a/src/map/cloud/useroption/index.js b/src/map/cloud/useroption/index.js new file mode 100644 index 0000000..3bc31f0 --- /dev/null +++ b/src/map/cloud/useroption/index.js @@ -0,0 +1,83 @@ +// 云函数入口文件 +const cloud = require('wx-server-sdk') + +cloud.init() + +// 云函数入口函数 +exports.main = async (event, context) => { + const wxContext = cloud.getWXContext() + + //写有关于数据库操作的地方 + //获取数据库的连接对象 + const db = cloud.database(); + + //在一个云函数里面有4种数据库操作。所以要先判断是什么操作:增删改查 + + //增 + if(event.option=='add'){ + return await db.collection('users').add({ + //花括号里面是你要添加的对象 + data:event.addData + //可添加多条或一条 + //event:包含传过来的所有数据的一个对象 + }); + } +//删 +else if(event.option=="deleteuser"){ + return await db.collection('users').where({ + //将要删除的值赋给name + User_ID:event.delUser_ID + }).remove(); +} +else if(event.option=="deleteusers"){ + return await db.collection('users').where({ + //将要删除的值赋给name + User_College:event.delUser_College, + User_Grade:event.delUser_Grade, + User_Class:event.delUser_Class + }).remove(); +} +//查 +else if(event.option=="getID"){ + return await db.collection('users').where({ + User_ID:event.getUser_ID + }).get({ + success:function(res){ + return res + } + }) +} + +else if(event.option=="getCollege"){ + return await db.collection('users').where({ + User_College:event.getUser_College, + User_Grade:event.getUser_Grade, + User_Class:event.getUser_Class + }).get({ + success:function(res){ + return res + } + }) +} + +else if(event.option=="getusers"){ + return await db.collection('users').where({ + }).get({ + success:function(res){ + return res + } + }) +} + +//改 +else if(event.option=="update"){ + return await db.collection('users').where({ + User_ID:event.updateUser_ID + }).update({ + data:{ + User_College:event.updateUser_College + } + }) +} + +} diff --git a/src/map/cloud/useroption/package.json b/src/map/cloud/useroption/package.json new file mode 100644 index 0000000..35b0810 --- /dev/null +++ b/src/map/cloud/useroption/package.json @@ -0,0 +1,14 @@ +{ + "name": "useroption", + "version": "1.0.0", + "description": "", + "main": "index.js", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "author": "", + "license": "ISC", + "dependencies": { + "wx-server-sdk": "~2.6.3" + } +} \ No newline at end of file diff --git a/src/map/miniprogram/app.js b/src/map/miniprogram/app.js new file mode 100644 index 0000000..404830d --- /dev/null +++ b/src/map/miniprogram/app.js @@ -0,0 +1,20 @@ +// app.js +App({ + onLaunch: function () { + if (!wx.cloud) { + console.error('请使用 2.2.3 或以上的基础库以使用云能力'); + } else { + wx.cloud.init({ + // env 参数说明: + // env 参数决定接下来小程序发起的云开发调用(wx.cloud.xxx)会默认请求到哪个云环境的资源 + // 此处请填入环境 ID, 环境 ID 可打开云控制台查看 + // 如不填则使用默认环境(第一个创建的环境) + // env: 'my-env-id', + env:'cloud1-5gsqi02q8e4bd2dc', + traceUser: true, + }); + } + + this.globalData = {}; + } +}); diff --git a/src/map/miniprogram/app.json b/src/map/miniprogram/app.json new file mode 100644 index 0000000..e1adfa7 --- /dev/null +++ b/src/map/miniprogram/app.json @@ -0,0 +1,72 @@ +{ + "pages": [ + "pages/login/login", + "pages/Find directions/Find directions", + "pages/text/text", + "pages/ModifyMap/ModifyMap", + "pages/ModifyInformation/ModifyInformation", + "pages/ManageAccount/ManageAccount", + "pages/index/index", + "pages/adduser/index", + "pages/addusers/index", + "pages/adduserssuccess/index", + "pages/delete/index", + "pages/deleteuser/index", + "pages/deleteusers/index", + "pages/deleteuserssuccess/index", + "pages/selectusers/index", + "pages/selectusers(ID)/index", + "pages/selectusers(college)/index", + "pages/selectuserss/index", + "pages/selectuserssuccess/index", + "pages/updateusers/index", + "pages/updateuserssuccess/index", + "pages/index_hjf/index_hjf", + "pages/index1/index1", + "pages/adlogin/adlogin", + "pages/login_1/login_1", + "pages/getWeather/getWeather", + "pages/map/map" + + ], + "window": { + "backgroundColor": "#F6F6F6", + "backgroundTextStyle": "light", + "navigationBarBackgroundColor": "#F6F6F6", + "navigationBarTitleText": "管理用户", + "navigationBarTextStyle": "black" + }, + "tabBar": { + "color": "#dddddd", + "selectedColor": "#3cc51f", + "borderStyle": "black", + "backgroundColor": "#ffffff", + "list": [{ + "pagePath": "pages/map/map", + "iconPath": "image/wechat.png", + "selectedIconPath": "image/locate.png", + "text": "导航" + },{ + "pagePath": "pages/text/text", + "iconPath": "image/locate.png", + "selectedIconPath": "image/locateHL.png", + "text": "信息栏" + } + ] + }, + "debug": true, + "style": "v2", + "sitemapLocation": "sitemap.json", + "requiredPrivateInfos":[ + "getLocation" + ], + "permission": { + "scope.userLocation": { + "desc": "你的位置信息将用于小程序位置接口的效果展示" + } + }, + "navigateToMiniProgramAppIdList": [ + "wx5e77d1bb9e24f179" + ] + +} diff --git a/src/map/miniprogram/app.wxss b/src/map/miniprogram/app.wxss new file mode 100644 index 0000000..df96b0e --- /dev/null +++ b/src/map/miniprogram/app.wxss @@ -0,0 +1,27 @@ +/**app.wxss**/ +.container { + display: flex; + flex-direction: column; + align-items: center; + box-sizing: border-box; +} + +button { + background: initial; +} + +button:focus{ + outline: 0; +} + +button::after{ + border: none; +} + + +page { + background: #f6f6f6; + display: flex; + flex-direction: column; + justify-content: flex-start; +} \ No newline at end of file diff --git a/src/map/miniprogram/components/cloudTipModal/index.js b/src/map/miniprogram/components/cloudTipModal/index.js new file mode 100644 index 0000000..f5ca0c1 --- /dev/null +++ b/src/map/miniprogram/components/cloudTipModal/index.js @@ -0,0 +1,37 @@ +// miniprogram/components/cloudTipModal/index.js +const { isMac } = require('../../envList.js'); + +Component({ + + /** + * 页面的初始数据 + */ + data: { + showUploadTip: false, + tipText: isMac ? 'sh ./uploadCloudFunction.sh' : './uploadCloudFunction.bat' + }, + properties: { + showUploadTipProps: Boolean + }, + observers: { + showUploadTipProps: function(showUploadTipProps) { + this.setData({ + showUploadTip: showUploadTipProps + }); + } + }, + methods: { + onChangeShowUploadTip() { + this.setData({ + showUploadTip: !this.data.showUploadTip + }); + }, + + copyShell() { + wx.setClipboardData({ + data: this.data.tipText, + }); + }, + } + +}); diff --git a/src/map/miniprogram/components/cloudTipModal/index.json b/src/map/miniprogram/components/cloudTipModal/index.json new file mode 100644 index 0000000..4575d1b --- /dev/null +++ b/src/map/miniprogram/components/cloudTipModal/index.json @@ -0,0 +1,4 @@ +{ + "usingComponents": {}, + "component": true +} \ No newline at end of file diff --git a/src/map/miniprogram/components/cloudTipModal/index.wxml b/src/map/miniprogram/components/cloudTipModal/index.wxml new file mode 100644 index 0000000..5611267 --- /dev/null +++ b/src/map/miniprogram/components/cloudTipModal/index.wxml @@ -0,0 +1,13 @@ + + + + + 体验前需部署云资源 + 请开启调试器进入终端窗口,复制并运行以下命令 + + {{tipText}} + 复制 + + 已执行命令 + + diff --git a/src/map/miniprogram/components/cloudTipModal/index.wxss b/src/map/miniprogram/components/cloudTipModal/index.wxss new file mode 100644 index 0000000..ae36531 --- /dev/null +++ b/src/map/miniprogram/components/cloudTipModal/index.wxss @@ -0,0 +1,57 @@ +.install_tip_back { + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + background-color: rgba(0,0,0,0.4); + z-index: 1; +} + +.install_tip_detail { + position: fixed; + background-color: white; + right: 0; + bottom: 0; + left: 0; + top: 60%; + border-radius: 40rpx 40rpx 0 0; + padding: 50rpx; + z-index: 9; +} + +.install_tip_detail_title { + font-weight: 400; + font-size: 40rpx; + text-align: center; +} + +.install_tip_detail_tip { + font-size: 25rpx; + color: rgba(0,0,0,0.4); + margin-top: 20rpx; + text-align: center; +} + +.install_tip_detail_shell { + margin: 70rpx 0; + display: flex; + justify-content: center; +} + +.install_tip_detail_copy { + color: #546488; + margin-left: 10rpx; +} + +.install_tip_detail_button { + color: #07C160; + font-weight: 500; + background-color: rgba(0,0,0,0.1); + width: 60%; + text-align: center; + height: 90rpx; + line-height: 90rpx; + border-radius: 10rpx; + margin: 0 auto; +} \ No newline at end of file diff --git a/src/map/miniprogram/envList.js b/src/map/miniprogram/envList.js new file mode 100644 index 0000000..949c90a --- /dev/null +++ b/src/map/miniprogram/envList.js @@ -0,0 +1,6 @@ +const envList = [{"envId":"cloud1-7gnkwzfv6ba72e50","alias":"cloud1"}] +const isMac = false +module.exports = { + envList, + isMac +} \ No newline at end of file diff --git a/src/map/miniprogram/image/arrowright.png b/src/map/miniprogram/image/arrowright.png new file mode 100644 index 0000000..109f4fe Binary files /dev/null and b/src/map/miniprogram/image/arrowright.png differ diff --git a/src/map/miniprogram/image/icon64_appwx_logo.png b/src/map/miniprogram/image/icon64_appwx_logo.png new file mode 100644 index 0000000..91a38f9 Binary files /dev/null and b/src/map/miniprogram/image/icon64_appwx_logo.png differ diff --git a/src/map/miniprogram/image/locate.png b/src/map/miniprogram/image/locate.png new file mode 100644 index 0000000..0ac1474 Binary files /dev/null and b/src/map/miniprogram/image/locate.png differ diff --git a/src/map/miniprogram/image/locateHL.png b/src/map/miniprogram/image/locateHL.png new file mode 100644 index 0000000..119c934 Binary files /dev/null and b/src/map/miniprogram/image/locateHL.png differ diff --git a/src/map/miniprogram/image/location-control.png b/src/map/miniprogram/image/location-control.png new file mode 100644 index 0000000..a76333c Binary files /dev/null and b/src/map/miniprogram/image/location-control.png differ diff --git a/src/map/miniprogram/image/location.png b/src/map/miniprogram/image/location.png new file mode 100644 index 0000000..045971e Binary files /dev/null and b/src/map/miniprogram/image/location.png differ diff --git a/src/map/miniprogram/image/logo.png b/src/map/miniprogram/image/logo.png new file mode 100644 index 0000000..76e8095 Binary files /dev/null and b/src/map/miniprogram/image/logo.png differ diff --git a/src/map/miniprogram/image/map.png b/src/map/miniprogram/image/map.png new file mode 100644 index 0000000..0ac1474 Binary files /dev/null and b/src/map/miniprogram/image/map.png differ diff --git a/src/map/miniprogram/image/map_active.png b/src/map/miniprogram/image/map_active.png new file mode 100644 index 0000000..119c934 Binary files /dev/null and b/src/map/miniprogram/image/map_active.png differ diff --git a/src/map/miniprogram/image/navigator.jpg b/src/map/miniprogram/image/navigator.jpg new file mode 100644 index 0000000..ffbc1cf Binary files /dev/null and b/src/map/miniprogram/image/navigator.jpg differ diff --git a/src/map/miniprogram/image/pause.png b/src/map/miniprogram/image/pause.png new file mode 100644 index 0000000..9acb73d Binary files /dev/null and b/src/map/miniprogram/image/pause.png differ diff --git a/src/map/miniprogram/image/play.png b/src/map/miniprogram/image/play.png new file mode 100644 index 0000000..982f2f2 Binary files /dev/null and b/src/map/miniprogram/image/play.png differ diff --git a/src/map/miniprogram/image/plus.png b/src/map/miniprogram/image/plus.png new file mode 100644 index 0000000..73ddfe3 Binary files /dev/null and b/src/map/miniprogram/image/plus.png differ diff --git a/src/map/miniprogram/image/record.png b/src/map/miniprogram/image/record.png new file mode 100644 index 0000000..a62ef81 Binary files /dev/null and b/src/map/miniprogram/image/record.png differ diff --git a/src/map/miniprogram/image/screenshot-marker.png b/src/map/miniprogram/image/screenshot-marker.png new file mode 100644 index 0000000..b12bc29 Binary files /dev/null and b/src/map/miniprogram/image/screenshot-marker.png differ diff --git a/src/map/miniprogram/image/screenshot1.png b/src/map/miniprogram/image/screenshot1.png new file mode 100644 index 0000000..ea42c4d Binary files /dev/null and b/src/map/miniprogram/image/screenshot1.png differ diff --git a/src/map/miniprogram/image/screenshot2.png b/src/map/miniprogram/image/screenshot2.png new file mode 100644 index 0000000..586be04 Binary files /dev/null and b/src/map/miniprogram/image/screenshot2.png differ diff --git a/src/map/miniprogram/image/stop.png b/src/map/miniprogram/image/stop.png new file mode 100644 index 0000000..9e65f3e Binary files /dev/null and b/src/map/miniprogram/image/stop.png differ diff --git a/src/map/miniprogram/image/trash.png b/src/map/miniprogram/image/trash.png new file mode 100644 index 0000000..83d68f3 Binary files /dev/null and b/src/map/miniprogram/image/trash.png differ diff --git a/src/map/miniprogram/image/wechat.png b/src/map/miniprogram/image/wechat.png new file mode 100644 index 0000000..470931c Binary files /dev/null and b/src/map/miniprogram/image/wechat.png differ diff --git a/src/map/miniprogram/image/wechatHL.png b/src/map/miniprogram/image/wechatHL.png new file mode 100644 index 0000000..3c5e52b Binary files /dev/null and b/src/map/miniprogram/image/wechatHL.png differ diff --git a/src/map/miniprogram/images/arrow.svg b/src/map/miniprogram/images/arrow.svg new file mode 100644 index 0000000..cd32a7d --- /dev/null +++ b/src/map/miniprogram/images/arrow.svg @@ -0,0 +1,11 @@ + + + ☀ iOS/☀ 图标/线型/icons_outlined_arrow@3x + + + + + + + + \ No newline at end of file diff --git a/src/map/miniprogram/images/database.png b/src/map/miniprogram/images/database.png new file mode 100644 index 0000000..d0499c1 Binary files /dev/null and b/src/map/miniprogram/images/database.png differ diff --git a/src/map/miniprogram/images/deploy_step1.png b/src/map/miniprogram/images/deploy_step1.png new file mode 100644 index 0000000..738b71c Binary files /dev/null and b/src/map/miniprogram/images/deploy_step1.png differ diff --git a/src/map/miniprogram/images/deploy_step2.png b/src/map/miniprogram/images/deploy_step2.png new file mode 100644 index 0000000..d77faab Binary files /dev/null and b/src/map/miniprogram/images/deploy_step2.png differ diff --git a/src/map/miniprogram/images/destination.jpeg b/src/map/miniprogram/images/destination.jpeg new file mode 100644 index 0000000..b8aeb1f Binary files /dev/null and b/src/map/miniprogram/images/destination.jpeg differ diff --git a/src/map/miniprogram/images/dh.jpg b/src/map/miniprogram/images/dh.jpg new file mode 100644 index 0000000..b3b3eda Binary files /dev/null and b/src/map/miniprogram/images/dh.jpg differ diff --git a/src/map/miniprogram/images/gps.jpg b/src/map/miniprogram/images/gps.jpg new file mode 100644 index 0000000..addd9dc Binary files /dev/null and b/src/map/miniprogram/images/gps.jpg differ diff --git a/src/map/miniprogram/images/hxLocation.png b/src/map/miniprogram/images/hxLocation.png new file mode 100644 index 0000000..308f101 Binary files /dev/null and b/src/map/miniprogram/images/hxLocation.png differ diff --git a/src/map/miniprogram/images/logo1.png b/src/map/miniprogram/images/logo1.png new file mode 100644 index 0000000..396bc68 Binary files /dev/null and b/src/map/miniprogram/images/logo1.png differ diff --git a/src/map/miniprogram/images/src.jpeg b/src/map/miniprogram/images/src.jpeg new file mode 100644 index 0000000..bce35dd Binary files /dev/null and b/src/map/miniprogram/images/src.jpeg differ diff --git a/src/map/miniprogram/images/sxaubg.jpg b/src/map/miniprogram/images/sxaubg.jpg new file mode 100644 index 0000000..920fb36 Binary files /dev/null and b/src/map/miniprogram/images/sxaubg.jpg differ diff --git a/src/map/miniprogram/images/tag.png b/src/map/miniprogram/images/tag.png new file mode 100644 index 0000000..308f101 Binary files /dev/null and b/src/map/miniprogram/images/tag.png differ diff --git a/src/map/miniprogram/images/xm.jpg b/src/map/miniprogram/images/xm.jpg new file mode 100644 index 0000000..fda6731 Binary files /dev/null and b/src/map/miniprogram/images/xm.jpg differ diff --git a/src/map/miniprogram/pages/Find directions/Find directions.js b/src/map/miniprogram/pages/Find directions/Find directions.js new file mode 100644 index 0000000..60e72cd --- /dev/null +++ b/src/map/miniprogram/pages/Find directions/Find directions.js @@ -0,0 +1,66 @@ +// pages/Find directions/Find directions.js +Page({ + + /** + * 页面的初始数据 + */ + data: { + + }, + + /** + * 生命周期函数--监听页面加载 + */ + onLoad(options) { + + }, + + /** + * 生命周期函数--监听页面初次渲染完成 + */ + onReady() { + + }, + + /** + * 生命周期函数--监听页面显示 + */ + onShow() { + + }, + + /** + * 生命周期函数--监听页面隐藏 + */ + onHide() { + + }, + + /** + * 生命周期函数--监听页面卸载 + */ + onUnload() { + + }, + + /** + * 页面相关事件处理函数--监听用户下拉动作 + */ + onPullDownRefresh() { + + }, + + /** + * 页面上拉触底事件的处理函数 + */ + onReachBottom() { + + }, + + /** + * 用户点击右上角分享 + */ + onShareAppMessage() { + + } +}) \ No newline at end of file diff --git a/src/map/miniprogram/pages/Find directions/Find directions.wxml b/src/map/miniprogram/pages/Find directions/Find directions.wxml new file mode 100644 index 0000000..3118fd3 --- /dev/null +++ b/src/map/miniprogram/pages/Find directions/Find directions.wxml @@ -0,0 +1,2 @@ + +pages/Find directions/Find directions.wxml diff --git a/src/map/miniprogram/pages/ManageAccount/ManageAccount.js b/src/map/miniprogram/pages/ManageAccount/ManageAccount.js new file mode 100644 index 0000000..3002583 --- /dev/null +++ b/src/map/miniprogram/pages/ManageAccount/ManageAccount.js @@ -0,0 +1,17 @@ +Page({ + data: { + loginOK: false + }, + //information + information() { + wx.navigateTo({ + url: '/pages/ModifyInformation/ModifyInformation', + }) + }, + //account + account() { + wx.navigateTo({ + url: '/pages/index/index' + }) + } +}) \ No newline at end of file diff --git a/src/map/miniprogram/pages/ManageAccount/ManageAccount.json b/src/map/miniprogram/pages/ManageAccount/ManageAccount.json new file mode 100644 index 0000000..8835af0 --- /dev/null +++ b/src/map/miniprogram/pages/ManageAccount/ManageAccount.json @@ -0,0 +1,3 @@ +{ + "usingComponents": {} +} \ No newline at end of file diff --git a/src/map/miniprogram/pages/ManageAccount/ManageAccount.wxml b/src/map/miniprogram/pages/ManageAccount/ManageAccount.wxml new file mode 100644 index 0000000..c9af81f --- /dev/null +++ b/src/map/miniprogram/pages/ManageAccount/ManageAccount.wxml @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/src/map/miniprogram/pages/ManageAccount/ManageAccount.wxss b/src/map/miniprogram/pages/ManageAccount/ManageAccount.wxss new file mode 100644 index 0000000..ee27500 --- /dev/null +++ b/src/map/miniprogram/pages/ManageAccount/ManageAccount.wxss @@ -0,0 +1 @@ +/* pages/ManageAccount/ManageAccount.wxss */ \ No newline at end of file diff --git a/src/map/miniprogram/pages/ModifyInformation/ModifyInformation.js b/src/map/miniprogram/pages/ModifyInformation/ModifyInformation.js new file mode 100644 index 0000000..22917b1 --- /dev/null +++ b/src/map/miniprogram/pages/ModifyInformation/ModifyInformation.js @@ -0,0 +1,32 @@ +Page({ + check() { + wx.navigateToMiniProgram({ + appId: 'wx5e77d1bb9e24f179', // 小程序B的appid** + path: 'pages/index/index', //小程序B的页面路径** + extraData: {}, + envVersion: 'release', //打开版本 开发版 develop;体验版trial; 正式版release + success(res) { + // 打开成功 + }, + fail(res){ + //打开失败 + } + }) + + }, + data: { + loginOK: false + }, + //information + information() { + wx.navigateTo({ + url: '/pages/ModifyInformation/ModifyInformation', + }) + }, + //account + account() { + wx.navigateTo({ + url: '/pages/index/index' + }) + } +}) \ No newline at end of file diff --git a/src/map/miniprogram/pages/ModifyInformation/ModifyInformation.json b/src/map/miniprogram/pages/ModifyInformation/ModifyInformation.json new file mode 100644 index 0000000..8835af0 --- /dev/null +++ b/src/map/miniprogram/pages/ModifyInformation/ModifyInformation.json @@ -0,0 +1,3 @@ +{ + "usingComponents": {} +} \ No newline at end of file diff --git a/src/map/miniprogram/pages/ModifyInformation/ModifyInformation.wxml b/src/map/miniprogram/pages/ModifyInformation/ModifyInformation.wxml new file mode 100644 index 0000000..c43160a --- /dev/null +++ b/src/map/miniprogram/pages/ModifyInformation/ModifyInformation.wxml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/src/map/miniprogram/pages/ModifyInformation/ModifyInformation.wxss b/src/map/miniprogram/pages/ModifyInformation/ModifyInformation.wxss new file mode 100644 index 0000000..5124cdd --- /dev/null +++ b/src/map/miniprogram/pages/ModifyInformation/ModifyInformation.wxss @@ -0,0 +1 @@ +/* pages/ModifyInformation/ModifyInformation.wxss */ \ No newline at end of file diff --git a/src/map/miniprogram/pages/ModifyMap/ModifyMap.js b/src/map/miniprogram/pages/ModifyMap/ModifyMap.js new file mode 100644 index 0000000..b2e88b9 --- /dev/null +++ b/src/map/miniprogram/pages/ModifyMap/ModifyMap.js @@ -0,0 +1,66 @@ +// pages/ModifyMap/ModifyMap.js +Page({ + + /** + * 页面的初始数据 + */ + data: { + + }, + + /** + * 生命周期函数--监听页面加载 + */ + onLoad(options) { + + }, + + /** + * 生命周期函数--监听页面初次渲染完成 + */ + onReady() { + + }, + + /** + * 生命周期函数--监听页面显示 + */ + onShow() { + + }, + + /** + * 生命周期函数--监听页面隐藏 + */ + onHide() { + + }, + + /** + * 生命周期函数--监听页面卸载 + */ + onUnload() { + + }, + + /** + * 页面相关事件处理函数--监听用户下拉动作 + */ + onPullDownRefresh() { + + }, + + /** + * 页面上拉触底事件的处理函数 + */ + onReachBottom() { + + }, + + /** + * 用户点击右上角分享 + */ + onShareAppMessage() { + + } +}) \ No newline at end of file diff --git a/src/map/miniprogram/pages/ModifyMap/ModifyMap.wxml b/src/map/miniprogram/pages/ModifyMap/ModifyMap.wxml new file mode 100644 index 0000000..206e0cf --- /dev/null +++ b/src/map/miniprogram/pages/ModifyMap/ModifyMap.wxml @@ -0,0 +1,2 @@ + +pages/ModifyMap/ModifyMap.wxml diff --git a/src/map/miniprogram/pages/adduser/index.js b/src/map/miniprogram/pages/adduser/index.js new file mode 100644 index 0000000..84bccd3 --- /dev/null +++ b/src/map/miniprogram/pages/adduser/index.js @@ -0,0 +1,89 @@ +// pages/index/index.js +//连接数据库 +const db = wx.cloud.database() +Page({ + + + /** + * 页面的初始数据 + */ + data: { + User_ID:'', + User_College:'', + User_Key:'', + User_Class:'', + User_Grade:'' + }, + + //监听并修改用户名和年龄的输入 + inputID:function(e){ + this.setData({ + User_ID:e.detail.value + }) + }, + + inputCollege:function(e){ + this.setData({ + User_College:e.detail.value + }) + }, + + inputGrade:function(e){ + this.setData({ + User_Grade:e.detail.value + }) + }, + + inputClass:function(e){ + this.setData({ + User_Class:e.detail.value + }) + }, + + inputKey:function(e){ + this.setData({ + User_Key:e.detail.value + }) + }, + //使用云函数 + //插入数据(增) + add:function(e){ + //要添加的数据是一个对象 + // var user={ + // username:this.data.username, + // age:this.data.age + // }; + + console.log(e); + wx.cloud.callFunction({ + name: 'useroption', + data: { + option: 'add', + addData:{ + User_ID:this.data.User_ID, + User_College:this.data.User_College, + User_Grade:this.data.User_Grade, + User_Class:this.data.User_Class, + User_Key:this.data.User_Key + } + }, + success: res => { + wx.showToast({ + title: '用户添加成功', + }) + console.log("添加成功") + console.log(res) + }, + fail:err => { + wx.showToast({ + title: '用户添加失败', + }) + } + }) + }, + getback:function(){ + wx.navigateBack({ + delta:1, + }) + } +}) diff --git a/src/map/miniprogram/pages/adduser/index.json b/src/map/miniprogram/pages/adduser/index.json new file mode 100644 index 0000000..8835af0 --- /dev/null +++ b/src/map/miniprogram/pages/adduser/index.json @@ -0,0 +1,3 @@ +{ + "usingComponents": {} +} \ No newline at end of file diff --git a/src/map/miniprogram/pages/adduser/index.wxml b/src/map/miniprogram/pages/adduser/index.wxml new file mode 100644 index 0000000..fa4839b --- /dev/null +++ b/src/map/miniprogram/pages/adduser/index.wxml @@ -0,0 +1,35 @@ + + + + + + + + + + \ No newline at end of file diff --git a/src/map/miniprogram/pages/adduser/index.wxss b/src/map/miniprogram/pages/adduser/index.wxss new file mode 100644 index 0000000..41625a0 --- /dev/null +++ b/src/map/miniprogram/pages/adduser/index.wxss @@ -0,0 +1,100 @@ +/* pages/addusers/index.wxss */ + +page { + padding-top: 54rpx; + background-color: #f6f6f6; + padding-bottom: 60rpx; +} + +.button { + margin-top: 50px; + margin-left: 50px; + margin-right: 50px; +} + +.title { + font-family: PingFang SC; + font-weight: 500; + color: #000000; + font-size: 44rpx; + margin-bottom: 40rpx; +} + +.top_tip { + font-size: 28rpx; + font-family: PingFang SC; + font-weight: 400; + color: #888888; + margin-bottom: 28rpx; +} + +.power { + margin-top: 30rpx; + border-radius: 5px; + background-color: white; + width: 93%; + padding-bottom: 1rpx; +} + +.power_info { + display: flex; + padding: 30rpx 25rpx; + align-items: center; + justify-content: space-between; +} + +.power_info_more { + width: 30rpx; + height: 30rpx; + transform: rotate(90deg); +} + +.power_info_less { + width: 30rpx; + height: 30rpx; + transform: rotate(270deg); +} + +.power_info_text { + display: flex; + flex-direction: column; +} + +.power_info_text_title { + margin-bottom: 10rpx; + font-weight: 400; + font-size: 35rpx; +} + +.power_info_text_tip { + color: rgba(0, 0, 0, 0.4); + font-size: 25rpx; +} + +.power_item { + padding: 30rpx 25rpx; + display: flex; + justify-content: space-between; +} + +.power_item_title { + font-size: 30rpx; +} + +.power_item_icon { + width: 30rpx; + height: 30rpx; +} + +.line { + width: 95%; + margin: 0 auto; + height: 2rpx; + background-color: rgba(0, 0, 0, 0.1); +} + +.environment { + color: rgba(0, 0, 0, 0.4); + font-size: 24rpx; + margin-top: 25%; +} \ No newline at end of file diff --git a/src/map/miniprogram/pages/addusers/index.js b/src/map/miniprogram/pages/addusers/index.js new file mode 100644 index 0000000..9bdf998 --- /dev/null +++ b/src/map/miniprogram/pages/addusers/index.js @@ -0,0 +1,88 @@ +// pages/addusers/index.js +const db = wx.cloud.database() +Page({ + + + /** + * 页面的初始数据 + */ + data: { + User_ID:'', + User_College:'', + User_Key:'', + User_Class:'', + User_Grade:'' + }, + + //监听并修改用户名和年龄的输入 + inputID:function(e){ + this.setData({ + User_ID:e.detail.value + }) + }, + + inputCollege:function(e){ + this.setData({ + User_College:e.detail.value + }) + }, + + inputGrade:function(e){ + this.setData({ + User_Grade:e.detail.value + }) + }, + + inputClass:function(e){ + this.setData({ + User_Class:e.detail.value + }) + }, + + inputKey:function(e){ + this.setData({ + User_Key:e.detail.value + }) + }, + //使用云函数 + //插入数据(增) + add:function(e){ + //要添加的数据是一个对象 + // var user={ + // username:this.data.username, + // age:this.data.age + // }; + + console.log(e); + wx.cloud.callFunction({ + name: 'useroption', + data: { + option: 'add', + addData:{ + User_ID:this.data.User_ID, + User_College:this.data.User_College, + User_Grade:this.data.User_Grade, + User_Class:this.data.User_Class, + User_Key:this.data.User_Key + } + }, + success: res => { + wx.showToast({ + title: '用户添加成功', + }) + console.log("添加成功") + console.log(res) + }, + fail:err => { + wx.showToast({ + title: '用户添加失败', + }) + } + }) + }, + getback:function(){ + wx.navigateBack({ + delta:1, + }) + } +}) \ No newline at end of file diff --git a/src/map/miniprogram/pages/addusers/index.json b/src/map/miniprogram/pages/addusers/index.json new file mode 100644 index 0000000..8835af0 --- /dev/null +++ b/src/map/miniprogram/pages/addusers/index.json @@ -0,0 +1,3 @@ +{ + "usingComponents": {} +} \ No newline at end of file diff --git a/src/map/miniprogram/pages/addusers/index.wxml b/src/map/miniprogram/pages/addusers/index.wxml new file mode 100644 index 0000000..7dc62bb --- /dev/null +++ b/src/map/miniprogram/pages/addusers/index.wxml @@ -0,0 +1,36 @@ + + + + + + + + + + + diff --git a/src/map/miniprogram/pages/addusers/index.wxss b/src/map/miniprogram/pages/addusers/index.wxss new file mode 100644 index 0000000..41625a0 --- /dev/null +++ b/src/map/miniprogram/pages/addusers/index.wxss @@ -0,0 +1,100 @@ +/* pages/addusers/index.wxss */ + +page { + padding-top: 54rpx; + background-color: #f6f6f6; + padding-bottom: 60rpx; +} + +.button { + margin-top: 50px; + margin-left: 50px; + margin-right: 50px; +} + +.title { + font-family: PingFang SC; + font-weight: 500; + color: #000000; + font-size: 44rpx; + margin-bottom: 40rpx; +} + +.top_tip { + font-size: 28rpx; + font-family: PingFang SC; + font-weight: 400; + color: #888888; + margin-bottom: 28rpx; +} + +.power { + margin-top: 30rpx; + border-radius: 5px; + background-color: white; + width: 93%; + padding-bottom: 1rpx; +} + +.power_info { + display: flex; + padding: 30rpx 25rpx; + align-items: center; + justify-content: space-between; +} + +.power_info_more { + width: 30rpx; + height: 30rpx; + transform: rotate(90deg); +} + +.power_info_less { + width: 30rpx; + height: 30rpx; + transform: rotate(270deg); +} + +.power_info_text { + display: flex; + flex-direction: column; +} + +.power_info_text_title { + margin-bottom: 10rpx; + font-weight: 400; + font-size: 35rpx; +} + +.power_info_text_tip { + color: rgba(0, 0, 0, 0.4); + font-size: 25rpx; +} + +.power_item { + padding: 30rpx 25rpx; + display: flex; + justify-content: space-between; +} + +.power_item_title { + font-size: 30rpx; +} + +.power_item_icon { + width: 30rpx; + height: 30rpx; +} + +.line { + width: 95%; + margin: 0 auto; + height: 2rpx; + background-color: rgba(0, 0, 0, 0.1); +} + +.environment { + color: rgba(0, 0, 0, 0.4); + font-size: 24rpx; + margin-top: 25%; +} \ No newline at end of file diff --git a/src/map/miniprogram/pages/adduserssuccess/index.js b/src/map/miniprogram/pages/adduserssuccess/index.js new file mode 100644 index 0000000..791d6ca --- /dev/null +++ b/src/map/miniprogram/pages/adduserssuccess/index.js @@ -0,0 +1,66 @@ +// pages/adduserssuccess/index.js +Page({ + + /** + * 页面的初始数据 + */ + data: { + + }, + + /** + * 生命周期函数--监听页面加载 + */ + onLoad(options) { + + }, + + /** + * 生命周期函数--监听页面初次渲染完成 + */ + onReady() { + + }, + + /** + * 生命周期函数--监听页面显示 + */ + onShow() { + + }, + + /** + * 生命周期函数--监听页面隐藏 + */ + onHide() { + + }, + + /** + * 生命周期函数--监听页面卸载 + */ + onUnload() { + + }, + + /** + * 页面相关事件处理函数--监听用户下拉动作 + */ + onPullDownRefresh() { + + }, + + /** + * 页面上拉触底事件的处理函数 + */ + onReachBottom() { + + }, + + /** + * 用户点击右上角分享 + */ + onShareAppMessage() { + + } +}) \ No newline at end of file diff --git a/src/map/miniprogram/pages/adduserssuccess/index.wxml b/src/map/miniprogram/pages/adduserssuccess/index.wxml new file mode 100644 index 0000000..42fae23 --- /dev/null +++ b/src/map/miniprogram/pages/adduserssuccess/index.wxml @@ -0,0 +1,2 @@ + +pages/adduserssuccess/index.wxml diff --git a/src/map/miniprogram/pages/adlogin/adlogin.js b/src/map/miniprogram/pages/adlogin/adlogin.js new file mode 100644 index 0000000..03b85ca --- /dev/null +++ b/src/map/miniprogram/pages/adlogin/adlogin.js @@ -0,0 +1,82 @@ +// pages/adlogin/adlogin.js +Page({ + data: { + account:'', + password:'' + }, + + //获取输入的账号 + getAccount(evt) { + //console.log('账号', evt.detail.value) + this.setData({ + account: evt.detail.value + }) + }, + + //获取管理员输入的密码 + getPassword(event) { + // console.log('密码', event.detail.value) + this.setData({ + password: event.detail.value + }) + }, + +//点击管理员登陆 + guanliyuanlogin() { + + let account = this.data.account + let password = this.data.password + console.log('管理员账号', account, '管理员密码', password) + if (account.length < 4) { + wx.showToast({ + icon: 'none', + title: '账号至少4位', + }) + return + } + if (password.length < 4) { + wx.showToast({ + icon: 'none', + title: '密码至少4位', + }) + return + } + + + //管理员登陆 + wx.cloud.database().collection('manager').where({ + account: account + }).get({ + success(res) { + console.log("获取数据成功", res) + let manager = res.data[0] + console.log("manager", manager) + if (password == manager.password) { + console.log('登陆成功') + wx.showToast({ + title: '登陆成功', + }) + // wx.navigateTo({ + // url: '../home/home?name=' + user.name, + // }) + wx.navigateTo({ + url: '../index/index', + }) + //保存管理员登陆状态 + wx.setStorageSync('manager', manager) + } else { + console.log('登陆失败') + wx.showToast({ + icon: 'none', + title: '账号或密码不正确', + }) + } + }, + fail(res) { + console.log("获取数据失败", res) + } + }) + + } + + }) \ No newline at end of file diff --git a/src/map/miniprogram/pages/adlogin/adlogin.json b/src/map/miniprogram/pages/adlogin/adlogin.json new file mode 100644 index 0000000..8835af0 --- /dev/null +++ b/src/map/miniprogram/pages/adlogin/adlogin.json @@ -0,0 +1,3 @@ +{ + "usingComponents": {} +} \ No newline at end of file diff --git a/src/map/miniprogram/pages/adlogin/adlogin.wxml b/src/map/miniprogram/pages/adlogin/adlogin.wxml new file mode 100644 index 0000000..75ad50d --- /dev/null +++ b/src/map/miniprogram/pages/adlogin/adlogin.wxml @@ -0,0 +1,5 @@ +输入管理员账号 + +输入管理员密码 + + diff --git a/src/map/miniprogram/pages/adlogin/adlogin.wxss b/src/map/miniprogram/pages/adlogin/adlogin.wxss new file mode 100644 index 0000000..01d4bfe --- /dev/null +++ b/src/map/miniprogram/pages/adlogin/adlogin.wxss @@ -0,0 +1,5 @@ +/* pages/adlogin/adlogin.wxss */ +.input{ + border: 1px solid gainsboro; + margin: 20rpx; +} \ No newline at end of file diff --git a/src/map/miniprogram/pages/delete/index.js b/src/map/miniprogram/pages/delete/index.js new file mode 100644 index 0000000..9e6333e --- /dev/null +++ b/src/map/miniprogram/pages/delete/index.js @@ -0,0 +1,14 @@ +// pages/delete/index.js +const db = wx.cloud.database() +Page({ + removeuser:function(){ + wx.navigateTo({ + url: '/pages/deleteuser/index', + }) + }, + removeusers:function(){ + wx.navigateTo({ + url: '/pages/deleteusers/index', + }) + }, +}) \ No newline at end of file diff --git a/src/map/miniprogram/pages/delete/index.json b/src/map/miniprogram/pages/delete/index.json new file mode 100644 index 0000000..8835af0 --- /dev/null +++ b/src/map/miniprogram/pages/delete/index.json @@ -0,0 +1,3 @@ +{ + "usingComponents": {} +} \ No newline at end of file diff --git a/src/map/miniprogram/pages/delete/index.wxml b/src/map/miniprogram/pages/delete/index.wxml new file mode 100644 index 0000000..3ba3a34 --- /dev/null +++ b/src/map/miniprogram/pages/delete/index.wxml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/src/map/miniprogram/pages/delete/index.wxss b/src/map/miniprogram/pages/delete/index.wxss new file mode 100644 index 0000000..35ab744 --- /dev/null +++ b/src/map/miniprogram/pages/delete/index.wxss @@ -0,0 +1,100 @@ +/* pages/delete/index.wxss */ +page { + padding-top: 54rpx; + background-color: #f6f6f6; + padding-bottom: 60rpx; +} + +.button { + margin-top: 50px; + margin-left: 50px; + margin-right: 50px; +} + + +.title { + font-family: PingFang SC; + font-weight: 500; + color: #000000; + font-size: 44rpx; + margin-bottom: 40rpx; +} + +.top_tip { + font-size: 28rpx; + font-family: PingFang SC; + font-weight: 400; + color: #888888; + margin-bottom: 28rpx; +} + +.power { + margin-top: 30rpx; + border-radius: 5px; + background-color: white; + width: 93%; + padding-bottom: 1rpx; +} + +.power_info { + display: flex; + padding: 30rpx 25rpx; + align-items: center; + justify-content: space-between; +} + +.power_info_more { + width: 30rpx; + height: 30rpx; + transform: rotate(90deg); +} + +.power_info_less { + width: 30rpx; + height: 30rpx; + transform: rotate(270deg); +} + +.power_info_text { + display: flex; + flex-direction: column; +} + +.power_info_text_title { + margin-bottom: 10rpx; + font-weight: 400; + font-size: 35rpx; +} + +.power_info_text_tip { + color: rgba(0, 0, 0, 0.4); + font-size: 25rpx; +} + +.power_item { + padding: 30rpx 25rpx; + display: flex; + justify-content: space-between; +} + +.power_item_title { + font-size: 30rpx; +} + +.power_item_icon { + width: 30rpx; + height: 30rpx; +} + +.line { + width: 95%; + margin: 0 auto; + height: 2rpx; + background-color: rgba(0, 0, 0, 0.1); +} + +.environment { + color: rgba(0, 0, 0, 0.4); + font-size: 24rpx; + margin-top: 25%; +} \ No newline at end of file diff --git a/src/map/miniprogram/pages/deleteuser/index.js b/src/map/miniprogram/pages/deleteuser/index.js new file mode 100644 index 0000000..c5ec9a8 --- /dev/null +++ b/src/map/miniprogram/pages/deleteuser/index.js @@ -0,0 +1,34 @@ +// pages/deleteuser/index.js +Page({ + inputdelID:function(e){ + this.setData({ + delUser_ID:e.detail.value + }) + }, + removeDataFn:function(){ + wx.cloud.callFunction({ + name: 'useroption', + data: { + option: 'deleteuser', + //要删除的数据 + delUser_ID:this.data.delUser_ID + }, + success: res => { + wx.showToast({ + title: '用户删除成功', + }) + console.log(res) + }, + fail: err => { + wx.showToast({ + title: '用户删除失败', + }) + } + }) + }, + getback:function(){ + wx.navigateBack({ + delta:2, + }) + } +}) \ No newline at end of file diff --git a/src/map/miniprogram/pages/deleteuser/index.json b/src/map/miniprogram/pages/deleteuser/index.json new file mode 100644 index 0000000..8835af0 --- /dev/null +++ b/src/map/miniprogram/pages/deleteuser/index.json @@ -0,0 +1,3 @@ +{ + "usingComponents": {} +} \ No newline at end of file diff --git a/src/map/miniprogram/pages/deleteuser/index.wxml b/src/map/miniprogram/pages/deleteuser/index.wxml new file mode 100644 index 0000000..f48e51b --- /dev/null +++ b/src/map/miniprogram/pages/deleteuser/index.wxml @@ -0,0 +1,10 @@ + + + + + + diff --git a/src/map/miniprogram/pages/deleteuser/index.wxss b/src/map/miniprogram/pages/deleteuser/index.wxss new file mode 100644 index 0000000..2b3c0a2 --- /dev/null +++ b/src/map/miniprogram/pages/deleteuser/index.wxss @@ -0,0 +1,100 @@ +/* pages/deleteuser/index.wxss */ + +page { + padding-top: 54rpx; + background-color: #f6f6f6; + padding-bottom: 60rpx; +} + +.button { + margin-top: 50px; + margin-left: 50px; + margin-right: 50px; +} + +.title { + font-family: PingFang SC; + font-weight: 500; + color: #000000; + font-size: 44rpx; + margin-bottom: 40rpx; +} + +.top_tip { + font-size: 28rpx; + font-family: PingFang SC; + font-weight: 400; + color: #888888; + margin-bottom: 28rpx; +} + +.power { + margin-top: 30rpx; + border-radius: 5px; + background-color: white; + width: 93%; + padding-bottom: 1rpx; +} + +.power_info { + display: flex; + padding: 30rpx 25rpx; + align-items: center; + justify-content: space-between; +} + +.power_info_more { + width: 30rpx; + height: 30rpx; + transform: rotate(90deg); +} + +.power_info_less { + width: 30rpx; + height: 30rpx; + transform: rotate(270deg); +} + +.power_info_text { + display: flex; + flex-direction: column; +} + +.power_info_text_title { + margin-bottom: 10rpx; + font-weight: 400; + font-size: 35rpx; +} + +.power_info_text_tip { + color: rgba(0, 0, 0, 0.4); + font-size: 25rpx; +} + +.power_item { + padding: 30rpx 25rpx; + display: flex; + justify-content: space-between; +} + +.power_item_title { + font-size: 30rpx; +} + +.power_item_icon { + width: 30rpx; + height: 30rpx; +} + +.line { + width: 95%; + margin: 0 auto; + height: 2rpx; + background-color: rgba(0, 0, 0, 0.1); +} + +.environment { + color: rgba(0, 0, 0, 0.4); + font-size: 24rpx; + margin-top: 25%; +} \ No newline at end of file diff --git a/src/map/miniprogram/pages/deleteusers/index.js b/src/map/miniprogram/pages/deleteusers/index.js new file mode 100644 index 0000000..8d384d1 --- /dev/null +++ b/src/map/miniprogram/pages/deleteusers/index.js @@ -0,0 +1,46 @@ +// pages/deleteusers/index.js +Page({ + inputdelCollege:function(e){ + this.setData({ + delUser_College:e.detail.value, + }) + }, + inputdelGrade:function(e){ + this.setData({ + delUser_Grade:e.detail.value, + }) + }, + inputdelClass:function(e){ + this.setData({ + delUser_Class:e.detail.value, + }) + }, + removeDataFn:function(){ + wx.cloud.callFunction({ + name: 'useroption', + data: { + option: 'deleteusers', + //要删除的数据 + delUser_College:this.data.delUser_College, + delUser_Grade:this.data.delUser_Grade, + delUser_Class:this.data.delUser_Class + }, + success: res => { + wx.showToast({ + title: '用户删除成功', + }) + console.log(res) + }, + fail: err => { + wx.showToast({ + title: '用户删除失败', + }) + } + }) + }, + getback:function(){ + wx.navigateBack({ + delta:2, + }) + } +}) \ No newline at end of file diff --git a/src/map/miniprogram/pages/deleteusers/index.json b/src/map/miniprogram/pages/deleteusers/index.json new file mode 100644 index 0000000..8835af0 --- /dev/null +++ b/src/map/miniprogram/pages/deleteusers/index.json @@ -0,0 +1,3 @@ +{ + "usingComponents": {} +} \ No newline at end of file diff --git a/src/map/miniprogram/pages/deleteusers/index.wxml b/src/map/miniprogram/pages/deleteusers/index.wxml new file mode 100644 index 0000000..416b368 --- /dev/null +++ b/src/map/miniprogram/pages/deleteusers/index.wxml @@ -0,0 +1,20 @@ + + + + + + + + diff --git a/src/map/miniprogram/pages/deleteusers/index.wxss b/src/map/miniprogram/pages/deleteusers/index.wxss new file mode 100644 index 0000000..bff6131 --- /dev/null +++ b/src/map/miniprogram/pages/deleteusers/index.wxss @@ -0,0 +1,100 @@ +/* pages/deleteusers/index.wxss */ + +page { + padding-top: 54rpx; + background-color: #f6f6f6; + padding-bottom: 60rpx; +} + +.button { + margin-top: 50px; + margin-left: 50px; + margin-right: 50px; +} + +.title { + font-family: PingFang SC; + font-weight: 500; + color: #000000; + font-size: 44rpx; + margin-bottom: 40rpx; +} + +.top_tip { + font-size: 28rpx; + font-family: PingFang SC; + font-weight: 400; + color: #888888; + margin-bottom: 28rpx; +} + +.power { + margin-top: 30rpx; + border-radius: 5px; + background-color: white; + width: 93%; + padding-bottom: 1rpx; +} + +.power_info { + display: flex; + padding: 30rpx 25rpx; + align-items: center; + justify-content: space-between; +} + +.power_info_more { + width: 30rpx; + height: 30rpx; + transform: rotate(90deg); +} + +.power_info_less { + width: 30rpx; + height: 30rpx; + transform: rotate(270deg); +} + +.power_info_text { + display: flex; + flex-direction: column; +} + +.power_info_text_title { + margin-bottom: 10rpx; + font-weight: 400; + font-size: 35rpx; +} + +.power_info_text_tip { + color: rgba(0, 0, 0, 0.4); + font-size: 25rpx; +} + +.power_item { + padding: 30rpx 25rpx; + display: flex; + justify-content: space-between; +} + +.power_item_title { + font-size: 30rpx; +} + +.power_item_icon { + width: 30rpx; + height: 30rpx; +} + +.line { + width: 95%; + margin: 0 auto; + height: 2rpx; + background-color: rgba(0, 0, 0, 0.1); +} + +.environment { + color: rgba(0, 0, 0, 0.4); + font-size: 24rpx; + margin-top: 25%; +} \ No newline at end of file diff --git a/src/map/miniprogram/pages/deleteuserssuccess/index.js b/src/map/miniprogram/pages/deleteuserssuccess/index.js new file mode 100644 index 0000000..ab6c037 --- /dev/null +++ b/src/map/miniprogram/pages/deleteuserssuccess/index.js @@ -0,0 +1,66 @@ +// pages/deleteuserssuccess/index.js +Page({ + + /** + * 页面的初始数据 + */ + data: { + + }, + + /** + * 生命周期函数--监听页面加载 + */ + onLoad(options) { + + }, + + /** + * 生命周期函数--监听页面初次渲染完成 + */ + onReady() { + + }, + + /** + * 生命周期函数--监听页面显示 + */ + onShow() { + + }, + + /** + * 生命周期函数--监听页面隐藏 + */ + onHide() { + + }, + + /** + * 生命周期函数--监听页面卸载 + */ + onUnload() { + + }, + + /** + * 页面相关事件处理函数--监听用户下拉动作 + */ + onPullDownRefresh() { + + }, + + /** + * 页面上拉触底事件的处理函数 + */ + onReachBottom() { + + }, + + /** + * 用户点击右上角分享 + */ + onShareAppMessage() { + + } +}) \ No newline at end of file diff --git a/src/map/miniprogram/pages/deleteuserssuccess/index.wxml b/src/map/miniprogram/pages/deleteuserssuccess/index.wxml new file mode 100644 index 0000000..4b74ca1 --- /dev/null +++ b/src/map/miniprogram/pages/deleteuserssuccess/index.wxml @@ -0,0 +1,2 @@ + +pages/deleteuserssuccess/index.wxml diff --git a/src/map/miniprogram/pages/getWeather/getWeather.js b/src/map/miniprogram/pages/getWeather/getWeather.js new file mode 100644 index 0000000..25b720e --- /dev/null +++ b/src/map/miniprogram/pages/getWeather/getWeather.js @@ -0,0 +1,36 @@ +var amapFile = require('../../utils/amap-wx.js'); +var app = getApp(); + +Page({ + data: { + city:"天津", + weather:"晴", + temperature:"10", + windpower:"18级", + winddirection:"南", + humidity:"5", + }, + onLoad: function(options){ + var that = this; + var myAmapFun = new amapFile.AMapWX({key:'78a99442f6e5cad3bfb832e33bdcf629'}); + myAmapFun.getWeather({ + success: function(res){ + //成功回调 + console.log("调取天气接口成功", res) + // 一定要在接口里进行赋值,否则接口数据还未返回,页面就已经将数据取走进行显示 + that.setData({ + city: res.city.data, + weather: res.weather.data, + temperature: res.temperature.data, + windpower: res.windpower.data, + winddirection: res.winddirection.data, + humidity: res.humidity.data + }) + }, + fail: function(info){ + //失败回调 + console.log(info) + } + }) + } +}) \ No newline at end of file diff --git a/src/map/miniprogram/pages/getWeather/getWeather.json b/src/map/miniprogram/pages/getWeather/getWeather.json new file mode 100644 index 0000000..f9e31e9 --- /dev/null +++ b/src/map/miniprogram/pages/getWeather/getWeather.json @@ -0,0 +1,4 @@ +{ + "navigationBarTitleText": "天气", + "usingComponents": {} +} \ No newline at end of file diff --git a/src/map/miniprogram/pages/getWeather/getWeather.wxml b/src/map/miniprogram/pages/getWeather/getWeather.wxml new file mode 100644 index 0000000..70176bf --- /dev/null +++ b/src/map/miniprogram/pages/getWeather/getWeather.wxml @@ -0,0 +1,10 @@ + + + + 城市:{{city}} + 天气:{{weather}} + 温度:{{temperature}} + 风力:{{windpower}} + 风向:{{winddirection}} + 湿度:{{humidity}} + \ No newline at end of file diff --git a/src/map/miniprogram/pages/getWeather/getWeather.wxss b/src/map/miniprogram/pages/getWeather/getWeather.wxss new file mode 100644 index 0000000..693eaa5 --- /dev/null +++ b/src/map/miniprogram/pages/getWeather/getWeather.wxss @@ -0,0 +1,14 @@ +/* pages/getWeather/getWeather.wxss */ + +.container{ + position: absolute; + top: 0; + bottom: 0; + left: 0; + right: 0; + background: #4D8AD7; + color: #fff; + font-size: 18px; + padding-top: 200rpx; + padding-left: 150rpx; +} \ No newline at end of file diff --git a/src/map/miniprogram/pages/home/home.js b/src/map/miniprogram/pages/home/home.js new file mode 100644 index 0000000..0ab33e6 --- /dev/null +++ b/src/map/miniprogram/pages/home/home.js @@ -0,0 +1,66 @@ +// pages/home/home.js +Page({ + + /** + * 页面的初始数据 + */ + data: { + + }, + + /** + * 生命周期函数--监听页面加载 + */ + onLoad(options) { + + }, + + /** + * 生命周期函数--监听页面初次渲染完成 + */ + onReady() { + + }, + + /** + * 生命周期函数--监听页面显示 + */ + onShow() { + + }, + + /** + * 生命周期函数--监听页面隐藏 + */ + onHide() { + + }, + + /** + * 生命周期函数--监听页面卸载 + */ + onUnload() { + + }, + + /** + * 页面相关事件处理函数--监听用户下拉动作 + */ + onPullDownRefresh() { + + }, + + /** + * 页面上拉触底事件的处理函数 + */ + onReachBottom() { + + }, + + /** + * 用户点击右上角分享 + */ + onShareAppMessage() { + + } +}) \ No newline at end of file diff --git a/src/map/miniprogram/pages/home/home.json b/src/map/miniprogram/pages/home/home.json new file mode 100644 index 0000000..8835af0 --- /dev/null +++ b/src/map/miniprogram/pages/home/home.json @@ -0,0 +1,3 @@ +{ + "usingComponents": {} +} \ No newline at end of file diff --git a/src/map/miniprogram/pages/home/home.wxml b/src/map/miniprogram/pages/home/home.wxml new file mode 100644 index 0000000..cc4fafe --- /dev/null +++ b/src/map/miniprogram/pages/home/home.wxml @@ -0,0 +1,2 @@ + +pages/home/home.wxml diff --git a/src/map/miniprogram/pages/home/home.wxss b/src/map/miniprogram/pages/home/home.wxss new file mode 100644 index 0000000..bc0eec7 --- /dev/null +++ b/src/map/miniprogram/pages/home/home.wxss @@ -0,0 +1 @@ +/* pages/home/home.wxss */ \ No newline at end of file diff --git a/src/map/miniprogram/pages/index/index.js b/src/map/miniprogram/pages/index/index.js new file mode 100644 index 0000000..f4e2740 --- /dev/null +++ b/src/map/miniprogram/pages/index/index.js @@ -0,0 +1,64 @@ +// pages/index/index.js +//连接数据库 +const db = wx.cloud.database() +Page({ + data: { + loginOK: false + }, + //information + information() { + wx.navigateTo({ + url: '/pages/ModifyInformation/ModifyInformation', + }) + }, + //account + account() { + wx.navigateTo({ + url: '/pages/index/index' + }) + }, + + + /** + * 页面的初始数据 + */ + + + + //使用云函数 + //插入数据(增) + add:function(e){ + wx.navigateTo({ + url: '/pages/adduser/index', + }) + }, + + //删除数据(删) + removeDataFn:function(){ + wx.navigateTo({ + url: '/pages/delete/index', + }) + }, + + + //查询数据(查) + searchDataNameFn:function(){ + wx.navigateTo({ + url: '/pages/selectusers/index', + }) + }, + + + //修改数据(改) + updateDataFn(){ + wx.navigateTo({ + url: '/pages/updateusers/index', + }) + }, + //返回 + getback:function(){ + wx.navigateBack({ + delta: 1, + }) + }, +}) \ No newline at end of file diff --git a/src/map/miniprogram/pages/index/index.json b/src/map/miniprogram/pages/index/index.json new file mode 100644 index 0000000..3ea1434 --- /dev/null +++ b/src/map/miniprogram/pages/index/index.json @@ -0,0 +1,5 @@ +{ + "usingComponents": { + "cloud-tip-modal": "/components/cloudTipModal/index" + } +} \ No newline at end of file diff --git a/src/map/miniprogram/pages/index/index.wxml b/src/map/miniprogram/pages/index/index.wxml new file mode 100644 index 0000000..f815c0a --- /dev/null +++ b/src/map/miniprogram/pages/index/index.wxml @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/map/miniprogram/pages/index/index.wxss b/src/map/miniprogram/pages/index/index.wxss new file mode 100644 index 0000000..9589666 --- /dev/null +++ b/src/map/miniprogram/pages/index/index.wxss @@ -0,0 +1,101 @@ +/**index.wxss**/ + +page { + padding-top: 54rpx; + background-color: #f6f6f6; + padding-bottom: 60rpx; +} + +.button { + margin-top: 50px; + margin-left: 50px; + margin-right: 50px; +} + + +.title { + font-family: PingFang SC; + font-weight: 500; + color: #000000; + font-size: 44rpx; + margin-bottom: 40rpx; +} + +.top_tip { + font-size: 28rpx; + font-family: PingFang SC; + font-weight: 400; + color: #888888; + margin-bottom: 28rpx; +} + +.power { + margin-top: 30rpx; + border-radius: 5px; + background-color: white; + width: 93%; + padding-bottom: 1rpx; +} + +.power_info { + display: flex; + padding: 30rpx 25rpx; + align-items: center; + justify-content: space-between; +} + +.power_info_more { + width: 30rpx; + height: 30rpx; + transform: rotate(90deg); +} + +.power_info_less { + width: 30rpx; + height: 30rpx; + transform: rotate(270deg); +} + +.power_info_text { + display: flex; + flex-direction: column; +} + +.power_info_text_title { + margin-bottom: 10rpx; + font-weight: 400; + font-size: 35rpx; +} + +.power_info_text_tip { + color: rgba(0, 0, 0, 0.4); + font-size: 25rpx; +} + +.power_item { + padding: 30rpx 25rpx; + display: flex; + justify-content: space-between; +} + +.power_item_title { + font-size: 30rpx; +} + +.power_item_icon { + width: 30rpx; + height: 30rpx; +} + +.line { + width: 95%; + margin: 0 auto; + height: 2rpx; + background-color: rgba(0, 0, 0, 0.1); +} + +.environment { + color: rgba(0, 0, 0, 0.4); + font-size: 24rpx; + margin-top: 25%; +} \ No newline at end of file diff --git a/src/map/miniprogram/pages/index1/index1.js b/src/map/miniprogram/pages/index1/index1.js new file mode 100644 index 0000000..cb26b78 --- /dev/null +++ b/src/map/miniprogram/pages/index1/index1.js @@ -0,0 +1,90 @@ +Page({ + data: { + name: '', + account: '', + password: '' + }, + //获取用户名 + getName(event) { + console.log('获取输入的用户名', event.detail.value) + this.setData({ + name: event.detail.value + }) + }, + //获取用户账号 + getAccount(event) { + console.log('获取输入的账号', event.detail.value) + this.setData({ + account: event.detail.value + }) + }, + // 获取密码 + getPassword(event) { + console.log('获取输入的密码', event.detail.value) + this.setData({ + password: event.detail.value + }) + }, + + //注册 + adzhuce() { + let name = this.data.name + let account = this.data.account + let password = this.data.password + console.log("点击了注册") + console.log("name", name) + console.log("account", account) + console.log("password", password) + //校验用户名 + if (name.length < 2) { + wx.showToast({ + icon: 'none', + title: '用户名至少2位', + }) + return + } + if (name.length > 10) { + wx.showToast({ + icon: 'none', + title: '用户名最多10位', + }) + return + } + //校验账号 + if (account.length < 4) { + wx.showToast({ + icon: 'none', + title: '账号至少4位', + }) + return + } + //校验密码 + if (password.length < 4) { + wx.showToast({ + icon: 'none', + title: '密码至少4位', + }) + return + } + //注册功能的实现 + wx.cloud.database().collection('manager').add({ + data: { + name: name, + account: account, + password: password + }, + success(res) { + console.log('注册成功', res) + wx.showToast({ + title: '注册成功', + }) + wx.navigateTo({ + url: '../adlogin/adlogin', + }) + }, + fail(res) { + console.log('注册失败', res) + } + }) + } + }) \ No newline at end of file diff --git a/src/map/miniprogram/pages/index1/index1.json b/src/map/miniprogram/pages/index1/index1.json new file mode 100644 index 0000000..8835af0 --- /dev/null +++ b/src/map/miniprogram/pages/index1/index1.json @@ -0,0 +1,3 @@ +{ + "usingComponents": {} +} \ No newline at end of file diff --git a/src/map/miniprogram/pages/index1/index1.wxml b/src/map/miniprogram/pages/index1/index1.wxml new file mode 100644 index 0000000..bd53fbc --- /dev/null +++ b/src/map/miniprogram/pages/index1/index1.wxml @@ -0,0 +1,8 @@ + +输入管理员用户名 + +输入管理员用户账号 + +输入管理员密码 + + \ No newline at end of file diff --git a/src/map/miniprogram/pages/index1/index1.wxss b/src/map/miniprogram/pages/index1/index1.wxss new file mode 100644 index 0000000..02428e2 --- /dev/null +++ b/src/map/miniprogram/pages/index1/index1.wxss @@ -0,0 +1,5 @@ +/**index.wxss**/ +.input{ + border: 1px solid gainsboro; + margin: 15rpx; +} \ No newline at end of file diff --git a/src/map/miniprogram/pages/index_hjf/index_hjf.js b/src/map/miniprogram/pages/index_hjf/index_hjf.js new file mode 100644 index 0000000..0795310 --- /dev/null +++ b/src/map/miniprogram/pages/index_hjf/index_hjf.js @@ -0,0 +1,90 @@ +Page({ + data: { + name: '', + zhanghao: '', + mima: '' + }, + //获取用户名 + getName(event) { + console.log('获取输入的用户名', event.detail.value) + this.setData({ + name: event.detail.value + }) + }, + //获取用户账号 + getZhangHao(event) { + console.log('获取输入的账号', event.detail.value) + this.setData({ + zhanghao: event.detail.value + }) + }, + // 获取密码 + getMiMa(event) { + console.log('获取输入的密码', event.detail.value) + this.setData({ + mima: event.detail.value + }) + }, + + //注册 + zhuce() { + let name = this.data.name + let zhanghao = this.data.zhanghao + let mima = this.data.mima + console.log("点击了注册") + console.log("name", name) + console.log("zhanghao", zhanghao) + console.log("mima", mima) + //校验用户名 + if (name.length < 2) { + wx.showToast({ + icon: 'none', + title: '用户名至少2位', + }) + return + } + if (name.length > 10) { + wx.showToast({ + icon: 'none', + title: '用户名最多10位', + }) + return + } + //校验账号 + if (zhanghao.length < 4) { + wx.showToast({ + icon: 'none', + title: '账号至少4位', + }) + return + } + //校验密码 + if (mima.length < 4) { + wx.showToast({ + icon: 'none', + title: '密码至少4位', + }) + return + } + //注册功能的实现 + wx.cloud.database().collection('user').add({ + data: { + name: name, + zhanghao: zhanghao, + mima: mima + }, + success(res) { + console.log('注册成功', res) + wx.showToast({ + title: '注册成功', + }) + wx.navigateTo({ + url: '../login_1/login_1', + }) + }, + fail(res) { + console.log('注册失败', res) + } + }) + } + }) \ No newline at end of file diff --git a/src/map/miniprogram/pages/index_hjf/index_hjf.json b/src/map/miniprogram/pages/index_hjf/index_hjf.json new file mode 100644 index 0000000..8835af0 --- /dev/null +++ b/src/map/miniprogram/pages/index_hjf/index_hjf.json @@ -0,0 +1,3 @@ +{ + "usingComponents": {} +} \ No newline at end of file diff --git a/src/map/miniprogram/pages/index_hjf/index_hjf.wxml b/src/map/miniprogram/pages/index_hjf/index_hjf.wxml new file mode 100644 index 0000000..8697e97 --- /dev/null +++ b/src/map/miniprogram/pages/index_hjf/index_hjf.wxml @@ -0,0 +1,8 @@ + +输入用户名 + +输入用户账号 + +输入密码 + + \ No newline at end of file diff --git a/src/map/miniprogram/pages/index_hjf/index_hjf.wxss b/src/map/miniprogram/pages/index_hjf/index_hjf.wxss new file mode 100644 index 0000000..02428e2 --- /dev/null +++ b/src/map/miniprogram/pages/index_hjf/index_hjf.wxss @@ -0,0 +1,5 @@ +/**index.wxss**/ +.input{ + border: 1px solid gainsboro; + margin: 15rpx; +} \ No newline at end of file diff --git a/src/map/miniprogram/pages/login/login.js b/src/map/miniprogram/pages/login/login.js new file mode 100644 index 0000000..3bc5b0f --- /dev/null +++ b/src/map/miniprogram/pages/login/login.js @@ -0,0 +1,50 @@ +//获取应用实例 +var app = getApp() +Page({ + data: { + user_name:'', + user_password:'' + }, + + //输入用户名 + userNameChange: function (e) { + this.data.user_name = e.detail.value; + }, + //输入密码 + userPasswordChange: function (e) { + this.data.user_password = e.detail.value; + }, + denglu() { + wx.navigateTo({ + url: '/pages/login_1/login_1', + }) + }, + + zhuce() { + wx.navigateTo({ + url: '/pages/index_hjf/index_hjf', + }) + }, + guanliyuandenglu() { + wx.navigateTo({ + url: '/pages/adlogin/adlogin', + }) + }, + adzhuce() { + wx.navigateTo({ + url: '/pages/index1/index1', + }) + }, + /*showLive: function () { + wx.reLaunch({ + url: '../Find directions/Find directions', + }) + }, + showpage: function(){ + wx.reLaunch( + { + url:'../ModifyMap/ModifyMap' + } + ) + }*/ +}) \ No newline at end of file diff --git a/src/map/miniprogram/pages/login/login.json b/src/map/miniprogram/pages/login/login.json new file mode 100644 index 0000000..8835af0 --- /dev/null +++ b/src/map/miniprogram/pages/login/login.json @@ -0,0 +1,3 @@ +{ + "usingComponents": {} +} \ No newline at end of file diff --git a/src/map/miniprogram/pages/login/login.wxml b/src/map/miniprogram/pages/login/login.wxml new file mode 100644 index 0000000..58e1c14 --- /dev/null +++ b/src/map/miniprogram/pages/login/login.wxml @@ -0,0 +1,24 @@ + + + + + + \ No newline at end of file diff --git a/src/map/miniprogram/pages/login/login.wxss b/src/map/miniprogram/pages/login/login.wxss new file mode 100644 index 0000000..1ac561b --- /dev/null +++ b/src/map/miniprogram/pages/login/login.wxss @@ -0,0 +1,20 @@ +/**index.wxss**/ +.userinfo { + display: flex; + flex-direction: column; + align-items: center; +} +.userinfo-avatar { + width: 128rpx; + height: 128rpx; + margin: 20rpx; + border-radius: 50%; +} + +.userinfo-nickname { + color: red; +} + +.usermotto { + margin-top: 200px; +} \ No newline at end of file diff --git a/src/map/miniprogram/pages/login_1/login_1.js b/src/map/miniprogram/pages/login_1/login_1.js new file mode 100644 index 0000000..5bcd6b8 --- /dev/null +++ b/src/map/miniprogram/pages/login_1/login_1.js @@ -0,0 +1,97 @@ +// pages/login/login.js +Page({ + data: { + zhanghao: '', + mima: '' + }, + + + //获取输入的账号 + getZhanghao(event) { + //console.log('账号', event.detail.value) + this.setData({ + zhanghao: event.detail.value + }) + }, + + + //获取输入的密码 + getMima(event) { + // console.log('密码', event.detail.value) + this.setData({ + mima: event.detail.value + }) + }, + + //点击登陆 + login() { + let zhanghao = this.data.zhanghao + let mima = this.data.mima + console.log('账号', zhanghao, '密码', mima) + if(this.data.zhanghao == '') { + wx.showToast({ + title: '请输入账号!', + icon: 'none' + }) + return + } + if(this.data.mima == '') { + wx.showToast({ + title: '请输入密码!', + icon: 'none' + }) + return + } + if (zhanghao.length < 4) { + wx.showToast({ + icon: 'none', + title: '账号至少4位', + }) + return + } + if (mima.length < 4) { + wx.showToast({ + icon: 'none', + title: '密码至少4位', + }) + return + } + + //登陆 + wx.cloud.database().collection('user').where({ + zhanghao: zhanghao + }).get({ + success(res) { + console.log("获取数据成功", res) + let user = res.data[0] + console.log("user", user) + if (mima == user.mima) { + console.log('登陆成功') + wx.reLaunch({ + url: '../map/map', + }) + wx.showToast({ + title: '登陆成功', + }) + // wx.navigateTo({ + // url: '../home/home?name=' + user.name, + // }) + + //保存用户登陆状态 + wx.setStorageSync('user', user) + } else { + console.log('登陆失败') + wx.showToast({ + icon: 'none', + title: '账号或密码不正确', + }) + } + }, + fail(res) { + console.log("获取数据失败", res) + } + }) + + } + + }) \ No newline at end of file diff --git a/src/map/miniprogram/pages/login_1/login_1.json b/src/map/miniprogram/pages/login_1/login_1.json new file mode 100644 index 0000000..8835af0 --- /dev/null +++ b/src/map/miniprogram/pages/login_1/login_1.json @@ -0,0 +1,3 @@ +{ + "usingComponents": {} +} \ No newline at end of file diff --git a/src/map/miniprogram/pages/login_1/login_1.wxml b/src/map/miniprogram/pages/login_1/login_1.wxml new file mode 100644 index 0000000..49b7eae --- /dev/null +++ b/src/map/miniprogram/pages/login_1/login_1.wxml @@ -0,0 +1,8 @@ + +输入账号 + +输入密码 + + + + diff --git a/src/map/miniprogram/pages/login_1/login_1.wxss b/src/map/miniprogram/pages/login_1/login_1.wxss new file mode 100644 index 0000000..2c01333 --- /dev/null +++ b/src/map/miniprogram/pages/login_1/login_1.wxss @@ -0,0 +1,5 @@ +/* pages/login/login.wxss */ +.input{ + border: 1px solid gainsboro; + margin: 20rpx; +} \ No newline at end of file diff --git a/src/map/miniprogram/pages/logs/logs.js b/src/map/miniprogram/pages/logs/logs.js new file mode 100644 index 0000000..26e868a --- /dev/null +++ b/src/map/miniprogram/pages/logs/logs.js @@ -0,0 +1,66 @@ +// pages/logs/logs.js +Page({ + + /** + * 页面的初始数据 + */ + data: { + + }, + + /** + * 生命周期函数--监听页面加载 + */ + onLoad(options) { + + }, + + /** + * 生命周期函数--监听页面初次渲染完成 + */ + onReady() { + + }, + + /** + * 生命周期函数--监听页面显示 + */ + onShow() { + + }, + + /** + * 生命周期函数--监听页面隐藏 + */ + onHide() { + + }, + + /** + * 生命周期函数--监听页面卸载 + */ + onUnload() { + + }, + + /** + * 页面相关事件处理函数--监听用户下拉动作 + */ + onPullDownRefresh() { + + }, + + /** + * 页面上拉触底事件的处理函数 + */ + onReachBottom() { + + }, + + /** + * 用户点击右上角分享 + */ + onShareAppMessage() { + + } +}) \ No newline at end of file diff --git a/src/map/miniprogram/pages/logs/logs.wxml b/src/map/miniprogram/pages/logs/logs.wxml new file mode 100644 index 0000000..c49f50c --- /dev/null +++ b/src/map/miniprogram/pages/logs/logs.wxml @@ -0,0 +1,2 @@ + +pages/logs/logs.wxml diff --git a/src/map/miniprogram/pages/map/map.js b/src/map/miniprogram/pages/map/map.js new file mode 100644 index 0000000..5bafa37 --- /dev/null +++ b/src/map/miniprogram/pages/map/map.js @@ -0,0 +1,946 @@ +var amapFile = require('../../utils/amap-wx.js'); +var QQMapWX = require('../../utils/qqmap-wx-jssdk.js'); +var app = getApp(); + +Page({ + data:{ + location_table:[{ + name:"中国民航大学", + longitude: 117.35002, + latitude: 39.11198, + },{ + name:"中国民航大学北苑南门", + longitude: 117.34731127236174, + latitude: 39.10971874275899, + },{ + name:"中国民航大学北苑西门", + longitude: 117.34878648731993, + latitude: 39.11463444059635, + },{ + name:"中国民航大学北苑北门", + longitude: 117.3517905614166, + latitude: 39.11623685901714, + },{ + name:"中国民航大学北苑操场", + longitude: 117.35193003628538, + latitude: 39.11286133256378, + },{ + name:"中国民航大学北苑体育场", + longitude: 117.35319067452238, + latitude: 39.11298620078748, + },{ + name:"中国民航大学北苑游泳馆", + longitude: 117.35225190136717, + latitude: 39.113331668385676, + },{ + name:"中国民航大学北教一", + longitude: 117.34819103691862, + latitude: 39.111167265141056, + },{ + name:"中国民航大学北教四", + longitude: 117.35005785439299, + latitude: 39.11041387072548, + },{ + name:"中国民航大学北教五", + longitude: 117.348979606369, + latitude: 39.110580367422955, + },{ + name:"中国民航大学北二十一宿舍楼", + longitude: 117.3529251358299, + latitude: 39.111835323611125, + },{ + name:"中国民航大学北一食堂", + longitude: 117.351141466835, + latitude: 39.11229109820452, + },{ + name:"中国民航大学北四食堂", + longitude: 117.34990228627012, + latitude: 39.11351064491374, + },{ + name:"中国民航大学北五食堂", + longitude: 117.35222507927702, + latitude: 39.114359736647195, + },{ + name:"中国民航大学北苑礼堂", + longitude: 117.34922100518034, + latitude: 39.11285300801614, + },{ + name:"中国民航大学文化艺术教育中心", + longitude: 117.35004712555693, + latitude: 39.11260327087659, + },{ + name:"中国民航大学北区实验大楼", + longitude: 117.35049773667143, + latitude: 39.111554365211944, + },{ + name:"中国民航大学南一教学楼", + longitude: 117.35323358986662, + latitude: 39.10597242612648, + },{ + name:"中国民航大学南二教学楼", + longitude: 117.35212851975248, + latitude: 39.10647610917062, + },{ + name:"中国民航大学南三教学楼", + longitude: 117.35269714806364, + latitude: 39.10509825692947, + },{ + name:"中国民航大学南四教学楼", + longitude: 117.35289563153074, + latitude: 39.104253216397744, + },{ + name:"中国民航大学南五教学楼", + longitude: 117.35373784516142, + latitude: 39.10181794441759, + },{ + name:"中国民航大学南三教学楼", + longitude: 117.35483755085752, + latitude: 39.1078414467564, + },{ + name:"中国民航大学南苑北门", + longitude: 117.35484023306654, + latitude: 39.10783936546857, + },{ + name:"中国民航大学南苑体育馆", + longitude: 117.35579778168486, + latitude: 39.10689653606183, + },{ + name:"中国民航大学南苑图书馆", + longitude: 117.35313703034208, + latitude: 39.10710050464082, + },{ + name:"中国民航大学南苑田径场西", + longitude: 117.3557870528488, + latitude: 39.104977537473204, + },{ + name:"中国民航大学南苑田径场东", + longitude: 117.35731054756926, + latitude: 39.105185674336425, + },{ + name:"中国民航大学南苑篮球场", + longitude: 117.3557870528488, + latitude: 39.1060598424514, + },{ + name:"中国民航大学南苑排球场", + longitude: 117.35521842453764, + latitude: 39.10398679758133, + },{ + name:"中国民航大学南苑网球场", + longitude: 117.35609818909452, + latitude: 39.10344563125516, + },{ + name:"中国民航大学南苑羽乒馆", + longitude: 117.35184957001493, + latitude: 39.105310556161044, + },{ + name:"中国民航大学南苑明德馆", + longitude: 117.35486437294767, + latitude: 39.10133087992974, + },{ + name:"中国民航大学南一食堂", + longitude: 117.35289026711271, + latitude: 39.10357884181467, + },{ + name:"中国民航大学南二食堂", + longitude: 117.35157598469542, + latitude: 39.1017846409744, + },{ + name:"中国民航大学南三食堂", + longitude: 117.35169400189207, + latitude: 39.10357467898941, + },{ + name:"中国民航大学南一宿舍楼", + longitude: 117.3534642598419, + latitude: 39.10355386485458, + },{ + name:"中国民航大学南苑菜鸟驿站", + longitude: 117.35596944306181, + latitude: 39.10322500071765, + }], + src: { + longitude: 1.1, + latitude: 1.1, + }, + des: { + longitude: 1.1, + latitude: 1.1, + }, + src_location: "", + des_location: "", + // 初始展示时的经纬度 + longitude: 117.35002, + latitude: 39.11198, + // 初始的缩放比例 + scale:15, + // 统一设置地图 + setting : { + skew: 0, + rotate: 0, + showLocation: false, + showScale: false, + subKey: '', + layerStyle: 1, + enableZoom: true, + enableScroll: true, + enableRotate: false, + showCompass: false, + enable3D: false, + enableOverlooking: false, + enableSatellite: false, + enableTraffic: false, + }, + // 初始化显示地标 + markers:[{ + //id: 1, + longitude: 117.35002, + latitude: 39.11198, + title:"中国民航大学", + iconPath:"../../images/tag.png", + width: 20, + height: 30 + }], + // 显示按钮是否被点击 + type_door: "type", + type_mess: "type", + type_bathroom: "type", + type_print_shop: "type", + type_supermarket: "type", + type_post_station: "type", + type_library: "type", + type_barber_shop: "type", + type_playground: "type", + type_gymnasium: "type", + type_cancel: "type", + distance: '', + cost: '', + polyline: [] + }, + + // 界面出现即执行 + onLoad:function(options){ + this.setData({ + // 仅设置的属性会生效,其它的不受影响 + setting: { + // 展示目前位置 + showLocation: true, + // 右上角指南针 + showCompass: true, + // 左下角比例尺 + showScale: true, + enable3D: true, + //enableTraffic: true + } + }) + }, + + // 输入框获取出发地 + getSrc_location: function(event){ + this.setData({ + src_location: event.detail.value + }) + console.log("获取出发地调用成功", event) + // 对内部使用变量重新赋值,否则无法使用 + let location_table = this.data.location_table + let src_location = this.data.src_location + var that = this; + var qqmapsdk = new QQMapWX({ + key: 'MVJBZ-KOICX-B6W4G-TH5QR-MKW2E-5YBJA' //必需,自己申请 + }) + // geoCoder 根据地址获取经纬度 + qqmapsdk.geocoder({ + address: this.data.src_location, //需要转换为经纬度的地址 + success: function (res) { //返回的数据里面有该地址的经纬度 + console.log("qqmapsdk.geocoder 接口调用成功返回的回调", res) + that.data.src.longitude = res.result.location.lng; + that.data.src.latitude = res.result.location.lat; + }, + fail: function (res) { + console.log("qqmapsdk.geocoder 接口调用失败返回的回调,准备查询本地映射表", res) + // 查询映射表 + // let location = app.globalData.location + // let location = this.data.location + let i + let length = location_table.length + for (i=0; i +出发地: + + +目的地: + + + + + + + + + + + + + + {{distance}} + {{cost}} + 详情 + + + + + + {{index==1? '校门':''}} + {{index==2? '食堂':''}} + {{index==3? '浴室':''}} + {{index==4? '打印店':''}} + {{index==5? '超市':''}} + {{index==6? '菜鸟驿站':''}} + {{index==7? '图书馆':''}} + {{index==8? '理发店':''}} + {{index==9? '操场':''}} + {{index==10? '体育馆':''}} + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/map/miniprogram/pages/map/map.wxss b/src/map/miniprogram/pages/map/map.wxss new file mode 100644 index 0000000..0618695 --- /dev/null +++ b/src/map/miniprogram/pages/map/map.wxss @@ -0,0 +1,137 @@ +/* 显示位置按钮 */ +/* map { + width: 750rpx; +} */ + +/* .show_all { + position: absolute; + right: 100rpx; + bottom: 100rpx; + color: rgb(62, 207, 142); + background-color: rgb(255, 255, 255); + box-shadow: 0 4px 6px rgba(50, 50, 93, .11), 0 1px 3px rgba(0, 0, 0, .08); +} */ + +/* .cover { + color: #fff; + height: 100rpx; + width: 220rpx; + line-height: 100rpx; + font-size: 35rpx; + text-align: center; + position: absolute; + left: 100rpx; + bottom: 100rpx; + border-radius: 50rpx; + text-shadow: 0 1px 3px rgba(36, 180, 126, .4); +} */ + +/* .add_me { + font-size: 30rpx; + color: #fff; + background-color: rgb(62, 207, 142); + width: 450rpx; + padding: 20rpx; + position: absolute; + right: 10rpx; + top: 20rpx; + text-align: center; +} */ + +/* .up { + position: absolute; + right: 150rpx; + top: 5rpx; + border-right: 20rpx solid transparent; + border-left: 20rpx solid transparent; + border-bottom: 20rpx solid rgb(62, 207, 142); +} */ + +/* .getLocation { + position: absolute; + left: 20rpx; + bottom: 250rpx; + text-align: center; + width: 20px; + background-color:rgb(255, 255, 255,0.9); + padding: 13px; + box-shadow: 1px 2px 3px #999999; + border-radius: 100px; +} */ + + /* .list { + position: absolute; + left: 20rpx; + bottom: 360rpx; + text-align: center; + width: 20px; + background-color: rgb(62, 207, 142,0.9); + padding: 13px; + box-shadow: 1px 2px 3px #999999; + border-radius: 100px; +} */ + +.tab-h{ + height: 400rpx; + width: 140rpx; + bottom:250rpx; + right: 12px; + box-sizing: border-box; + overflow: hidden; + line-height: 80rpx; + background: rgba(255, 255, 255, 0.9); + font-size: 16px; + white-space: nowrap; + position: fixed; + z-index: 99; + border-radius: 10px; +} +.chouse_type { + font-size: 32rpx; + color: rgb(62, 207, 142); + text-align: center; +} +.type { + font-size: 32rpx; + + color: rgb(192, 192, 192); + text-align: center; +} +scroll-view ::-webkit-scrollbar { + width: 0; + height: 0; + color: transparent; + display: none; +} + +/***************************************************************/ + +.text_box{ + position:absolute; + height: 90px; + bottom: 0px; + left: 0px; + right: 0px; +} +.text_box .text{ + margin: 15px; +} +.detail_button{ + position:absolute; + bottom: 30px; + right: 10px; + padding: 3px 5px; + color: #fff; + background: #0091ff; + width:50px; + text-align:center; + border-radius:5px; +} + +.weather_button{ + bottom:150rpx; + right: 12px; + font-size: 16px; + position: fixed; +} + diff --git a/src/map/miniprogram/pages/selectusers(ID)/index.js b/src/map/miniprogram/pages/selectusers(ID)/index.js new file mode 100644 index 0000000..c5fc052 --- /dev/null +++ b/src/map/miniprogram/pages/selectusers(ID)/index.js @@ -0,0 +1,36 @@ +// pages/selectusers/index.js +Page({ + inputgetID:function(e){ + this.setData({ + getUser_ID:e.detail.value + }) + }, + searchDataNameFn:function(){ + wx.cloud.callFunction({ + name: 'useroption', + data: { + option: 'getID', + getUser_ID:this.data.getUser_ID + }, + success: res => { + this.setData({ + array: res.result.data + }) + wx.showToast({ + title: '用户查询成功', + }) + console.log(res.result.data) + }, + fail: err => { + wx.showToast({ + title: '用户查询失败', + }) + } + }) + }, + getback:function(){ + wx.navigateBack({ + delta:2, + }) + } +}) \ No newline at end of file diff --git a/src/map/miniprogram/pages/selectusers(ID)/index.json b/src/map/miniprogram/pages/selectusers(ID)/index.json new file mode 100644 index 0000000..8835af0 --- /dev/null +++ b/src/map/miniprogram/pages/selectusers(ID)/index.json @@ -0,0 +1,3 @@ +{ + "usingComponents": {} +} \ No newline at end of file diff --git a/src/map/miniprogram/pages/selectusers(ID)/index.wxml b/src/map/miniprogram/pages/selectusers(ID)/index.wxml new file mode 100644 index 0000000..4e95312 --- /dev/null +++ b/src/map/miniprogram/pages/selectusers(ID)/index.wxml @@ -0,0 +1,31 @@ + + + + + + + + 用户库 + + 年级 + 院系 + 班级 + 学号 + + + + {{item.User_College}} + {{item.User_Grade}} + {{item.User_Class}} + {{item.User_ID}} + + + + + + + diff --git a/src/map/miniprogram/pages/selectusers(ID)/index.wxss b/src/map/miniprogram/pages/selectusers(ID)/index.wxss new file mode 100644 index 0000000..541b7d5 --- /dev/null +++ b/src/map/miniprogram/pages/selectusers(ID)/index.wxss @@ -0,0 +1,145 @@ +/* pages/selectusers/index.wxss */ +/* pages/selectusers(college)/index.wxss */ + +page { + padding-top: 54rpx; + background-color: #f6f6f6; + padding-bottom: 60rpx; +} + +.button { + margin-top: 50px; + margin-left: 50px; + margin-right: 50px; +} + + +.title { + font-family: PingFang SC; + font-weight: 500; + color: #000000; + font-size: 44rpx; + margin-bottom: 40rpx; +} + +.top_tip { + font-size: 28rpx; + color: rgba(0, 0, 0, 0.5); + width: 90%; + text-align: left; + margin-top: 30rpx; + margin-left: 20rpx; +} + +.power { + margin-top: 30rpx; + border-radius: 5px; + background-color: white; + width: 93%; + padding-bottom: 1rpx; +} + +.power_info { + display: flex; + padding: 30rpx 25rpx; + align-items: center; + justify-content: space-between; +} + +.power_info_more { + width: 30rpx; + height: 30rpx; + transform: rotate(90deg); +} + +.power_info_less { + width: 30rpx; + height: 30rpx; + transform: rotate(270deg); +} + +.power_info_text { + display: flex; + flex-direction: column; +} + +.power_info_text_title { + margin-bottom: 10rpx; + font-weight: 400; + font-size: 35rpx; +} + +.power_info_text_tip { + color: rgba(0, 0, 0, 0.4); + font-size: 25rpx; +} + +.power_item { + padding: 30rpx 25rpx; + display: flex; + justify-content: space-between; +} + +.power_item_title { + font-size: 30rpx; +} + +.power_item_icon { + width: 30rpx; + height: 30rpx; +} + +.line { + width: 95%; + margin: 0 auto; + height: 2rpx; + background-color: rgba(0, 0, 0, 0.1); +} + +.environment { + color: rgba(0, 0, 0, 0.4); + font-size: 24rpx; + margin-top: 25%; +} + +.code_box { + text-align: center; + background-color: white; + margin-top: 30rpx; + padding: 17rpx; +} + +.code_box_title { + color: rgba(0, 0, 0, 0.5); + font-size: 26rpx; + margin-bottom: 20rpx; + text-align: left; +} + +.code_box_record { + display: flex; +} + +.code_box_record_title { + width: 33%; + font-size: 26rpx; + color: rgba(0, 0, 0, 0.5); + padding: 20rpx 0; +} + +.code_box_record_detail { + width: 33%; + font-size: 26rpx; + padding: 20rpx 0; +} + +.button { + width: 300rpx; + text-align: center; + margin: 20% auto 0 auto; + height: 80rpx; + color: white; + border-radius: 5px; + line-height: 80rpx; + background-color: #07c160; +} \ No newline at end of file diff --git a/src/map/miniprogram/pages/selectusers(college)/index.js b/src/map/miniprogram/pages/selectusers(college)/index.js new file mode 100644 index 0000000..8df6942 --- /dev/null +++ b/src/map/miniprogram/pages/selectusers(college)/index.js @@ -0,0 +1,48 @@ +// pages/selectusers(college)/index.js +Page({ + inputgetCollege:function(e){ + this.setData({ + getUser_College:e.detail.value + }) + }, + inputgetGrade:function(e){ + this.setData({ + getUser_Grade:e.detail.value + }) + }, + inputgetClass:function(e){ + this.setData({ + getUser_Class:e.detail.value + }) + }, + searchDataNameFn:function(){ + wx.cloud.callFunction({ + name: 'useroption', + data: { + option: 'getCollege', + getUser_College:this.data.getUser_College, + getUser_Grade:this.data.getUser_Grade, + getUser_Class:this.data.getUser_Class + }, + success: res => { + this.setData({ + array: res.result.data + }) + wx.showToast({ + title: '用户查询成功', + }) + console.log(res.result.data) + }, + fail: err => { + wx.showToast({ + title: '用户查询失败', + }) + } + }) + }, + getback:function(){ + wx.navigateBack({ + delta:2, + }) + } +}) \ No newline at end of file diff --git a/src/map/miniprogram/pages/selectusers(college)/index.json b/src/map/miniprogram/pages/selectusers(college)/index.json new file mode 100644 index 0000000..8835af0 --- /dev/null +++ b/src/map/miniprogram/pages/selectusers(college)/index.json @@ -0,0 +1,3 @@ +{ + "usingComponents": {} +} \ No newline at end of file diff --git a/src/map/miniprogram/pages/selectusers(college)/index.wxml b/src/map/miniprogram/pages/selectusers(college)/index.wxml new file mode 100644 index 0000000..2d27ab7 --- /dev/null +++ b/src/map/miniprogram/pages/selectusers(college)/index.wxml @@ -0,0 +1,41 @@ + + + + + + + + + + 用户库 + + 年级 + 院系 + 班级 + 学号 + + + + {{item.User_College}} + {{item.User_Grade}} + {{item.User_Class}} + {{item.User_ID}} + + + + + + + diff --git a/src/map/miniprogram/pages/selectusers(college)/index.wxss b/src/map/miniprogram/pages/selectusers(college)/index.wxss new file mode 100644 index 0000000..d670baa --- /dev/null +++ b/src/map/miniprogram/pages/selectusers(college)/index.wxss @@ -0,0 +1,144 @@ +/* pages/selectusers(college)/index.wxss */ + +page { + padding-top: 54rpx; + background-color: #f6f6f6; + padding-bottom: 60rpx; +} + +.button { + margin-top: 50px; + margin-left: 50px; + margin-right: 50px; +} + + +.title { + font-family: PingFang SC; + font-weight: 500; + color: #000000; + font-size: 44rpx; + margin-bottom: 40rpx; +} + +.top_tip { + font-size: 28rpx; + color: rgba(0, 0, 0, 0.5); + width: 90%; + text-align: left; + margin-top: 30rpx; + margin-left: 20rpx; +} + +.power { + margin-top: 30rpx; + border-radius: 5px; + background-color: white; + width: 93%; + padding-bottom: 1rpx; +} + +.power_info { + display: flex; + padding: 30rpx 25rpx; + align-items: center; + justify-content: space-between; +} + +.power_info_more { + width: 30rpx; + height: 30rpx; + transform: rotate(90deg); +} + +.power_info_less { + width: 30rpx; + height: 30rpx; + transform: rotate(270deg); +} + +.power_info_text { + display: flex; + flex-direction: column; +} + +.power_info_text_title { + margin-bottom: 10rpx; + font-weight: 400; + font-size: 35rpx; +} + +.power_info_text_tip { + color: rgba(0, 0, 0, 0.4); + font-size: 25rpx; +} + +.power_item { + padding: 30rpx 25rpx; + display: flex; + justify-content: space-between; +} + +.power_item_title { + font-size: 30rpx; +} + +.power_item_icon { + width: 30rpx; + height: 30rpx; +} + +.line { + width: 95%; + margin: 0 auto; + height: 2rpx; + background-color: rgba(0, 0, 0, 0.1); +} + +.environment { + color: rgba(0, 0, 0, 0.4); + font-size: 24rpx; + margin-top: 25%; +} + +.code_box { + text-align: center; + background-color: white; + margin-top: 30rpx; + padding: 17rpx; +} + +.code_box_title { + color: rgba(0, 0, 0, 0.5); + font-size: 26rpx; + margin-bottom: 20rpx; + text-align: left; +} + +.code_box_record { + display: flex; +} + +.code_box_record_title { + width: 33%; + font-size: 26rpx; + color: rgba(0, 0, 0, 0.5); + padding: 20rpx 0; +} + +.code_box_record_detail { + width: 33%; + font-size: 26rpx; + padding: 20rpx 0; +} + +.button { + width: 300rpx; + text-align: center; + margin: 20% auto 0 auto; + height: 80rpx; + color: white; + border-radius: 5px; + line-height: 80rpx; + background-color: #07c160; +} \ No newline at end of file diff --git a/src/map/miniprogram/pages/selectusers/index.js b/src/map/miniprogram/pages/selectusers/index.js new file mode 100644 index 0000000..998b938 --- /dev/null +++ b/src/map/miniprogram/pages/selectusers/index.js @@ -0,0 +1,22 @@ +// pages/selectusers/index.js +const db = wx.cloud.database() +Page({ + //查询数据(查) + searchID:function(){ + wx.navigateTo({ + url: '/pages/selectusers(ID)/index', + }) + }, + + searchCollege:function(){ + wx.navigateTo({ + url: '/pages/selectusers(college)/index', + }) + }, + + search:function(){ + wx.navigateTo({ + url: '/pages/selectuserss/index', + }) + }, +}) diff --git a/src/map/miniprogram/pages/selectusers/index.json b/src/map/miniprogram/pages/selectusers/index.json new file mode 100644 index 0000000..8835af0 --- /dev/null +++ b/src/map/miniprogram/pages/selectusers/index.json @@ -0,0 +1,3 @@ +{ + "usingComponents": {} +} \ No newline at end of file diff --git a/src/map/miniprogram/pages/selectusers/index.wxml b/src/map/miniprogram/pages/selectusers/index.wxml new file mode 100644 index 0000000..cf209a6 --- /dev/null +++ b/src/map/miniprogram/pages/selectusers/index.wxml @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/src/map/miniprogram/pages/selectusers/index.wxss b/src/map/miniprogram/pages/selectusers/index.wxss new file mode 100644 index 0000000..1a73360 --- /dev/null +++ b/src/map/miniprogram/pages/selectusers/index.wxss @@ -0,0 +1,101 @@ +/* pages/selectusers/index.wxss */ + +page { + padding-top: 54rpx; + background-color: #f6f6f6; + padding-bottom: 60rpx; +} + +.button { + margin-top: 50px; + margin-left: 50px; + margin-right: 50px; +} + + +.title { + font-family: PingFang SC; + font-weight: 500; + color: #000000; + font-size: 44rpx; + margin-bottom: 40rpx; +} + +.top_tip { + font-size: 28rpx; + font-family: PingFang SC; + font-weight: 400; + color: #888888; + margin-bottom: 28rpx; +} + +.power { + margin-top: 30rpx; + border-radius: 5px; + background-color: white; + width: 93%; + padding-bottom: 1rpx; +} + +.power_info { + display: flex; + padding: 30rpx 25rpx; + align-items: center; + justify-content: space-between; +} + +.power_info_more { + width: 30rpx; + height: 30rpx; + transform: rotate(90deg); +} + +.power_info_less { + width: 30rpx; + height: 30rpx; + transform: rotate(270deg); +} + +.power_info_text { + display: flex; + flex-direction: column; +} + +.power_info_text_title { + margin-bottom: 10rpx; + font-weight: 400; + font-size: 35rpx; +} + +.power_info_text_tip { + color: rgba(0, 0, 0, 0.4); + font-size: 25rpx; +} + +.power_item { + padding: 30rpx 25rpx; + display: flex; + justify-content: space-between; +} + +.power_item_title { + font-size: 30rpx; +} + +.power_item_icon { + width: 30rpx; + height: 30rpx; +} + +.line { + width: 95%; + margin: 0 auto; + height: 2rpx; + background-color: rgba(0, 0, 0, 0.1); +} + +.environment { + color: rgba(0, 0, 0, 0.4); + font-size: 24rpx; + margin-top: 25%; +} \ No newline at end of file diff --git a/src/map/miniprogram/pages/selectuserss/index.js b/src/map/miniprogram/pages/selectuserss/index.js new file mode 100644 index 0000000..fa90b3b --- /dev/null +++ b/src/map/miniprogram/pages/selectuserss/index.js @@ -0,0 +1,30 @@ +// pages/selectuserss/index.js +Page({ + searchDataNameFn:function(){ + wx.cloud.callFunction({ + name: 'useroption', + data: { + option: 'getusers', + }, + success: res => { + this.setData({ + array: res.result.data + }) + wx.showToast({ + title: '用户查询成功', + }) + console.log(res.result.data) + }, + fail: err => { + wx.showToast({ + title: '用户查询失败', + }) + } + }) + }, + getback:function(){ + wx.navigateBack({ + delta:2, + }) + } +}) \ No newline at end of file diff --git a/src/map/miniprogram/pages/selectuserss/index.json b/src/map/miniprogram/pages/selectuserss/index.json new file mode 100644 index 0000000..8835af0 --- /dev/null +++ b/src/map/miniprogram/pages/selectuserss/index.json @@ -0,0 +1,3 @@ +{ + "usingComponents": {} +} \ No newline at end of file diff --git a/src/map/miniprogram/pages/selectuserss/index.wxml b/src/map/miniprogram/pages/selectuserss/index.wxml new file mode 100644 index 0000000..10829ee --- /dev/null +++ b/src/map/miniprogram/pages/selectuserss/index.wxml @@ -0,0 +1,20 @@ + + + + 用户库 + + 年级 + 院系 + 班级 + 学号 + + + + {{item.User_College}} + {{item.User_Grade}} + {{item.User_Class}} + {{item.User_ID}} + + + + diff --git a/src/map/miniprogram/pages/selectuserss/index.wxss b/src/map/miniprogram/pages/selectuserss/index.wxss new file mode 100644 index 0000000..2ec4ff6 --- /dev/null +++ b/src/map/miniprogram/pages/selectuserss/index.wxss @@ -0,0 +1,145 @@ +/* pages/selectuserss/index.wxss */ +/* pages/selectusers(college)/index.wxss */ + +page { + padding-top: 54rpx; + background-color: #f6f6f6; + padding-bottom: 60rpx; +} + +.button { + margin-top: 50px; + margin-left: 50px; + margin-right: 50px; +} + + +.title { + font-family: PingFang SC; + font-weight: 500; + color: #000000; + font-size: 44rpx; + margin-bottom: 40rpx; +} + +.top_tip { + font-size: 28rpx; + color: rgba(0, 0, 0, 0.5); + width: 90%; + text-align: left; + margin-top: 30rpx; + margin-left: 20rpx; +} + +.power { + margin-top: 30rpx; + border-radius: 5px; + background-color: white; + width: 93%; + padding-bottom: 1rpx; +} + +.power_info { + display: flex; + padding: 30rpx 25rpx; + align-items: center; + justify-content: space-between; +} + +.power_info_more { + width: 30rpx; + height: 30rpx; + transform: rotate(90deg); +} + +.power_info_less { + width: 30rpx; + height: 30rpx; + transform: rotate(270deg); +} + +.power_info_text { + display: flex; + flex-direction: column; +} + +.power_info_text_title { + margin-bottom: 10rpx; + font-weight: 400; + font-size: 35rpx; +} + +.power_info_text_tip { + color: rgba(0, 0, 0, 0.4); + font-size: 25rpx; +} + +.power_item { + padding: 30rpx 25rpx; + display: flex; + justify-content: space-between; +} + +.power_item_title { + font-size: 30rpx; +} + +.power_item_icon { + width: 30rpx; + height: 30rpx; +} + +.line { + width: 95%; + margin: 0 auto; + height: 2rpx; + background-color: rgba(0, 0, 0, 0.1); +} + +.environment { + color: rgba(0, 0, 0, 0.4); + font-size: 24rpx; + margin-top: 25%; +} + +.code_box { + text-align: center; + background-color: white; + margin-top: 30rpx; + padding: 17rpx; +} + +.code_box_title { + color: rgba(0, 0, 0, 0.5); + font-size: 26rpx; + margin-bottom: 20rpx; + text-align: left; +} + +.code_box_record { + display: flex; +} + +.code_box_record_title { + width: 33%; + font-size: 26rpx; + color: rgba(0, 0, 0, 0.5); + padding: 20rpx 0; +} + +.code_box_record_detail { + width: 33%; + font-size: 26rpx; + padding: 20rpx 0; +} + +.button { + width: 300rpx; + text-align: center; + margin: 20% auto 0 auto; + height: 80rpx; + color: white; + border-radius: 5px; + line-height: 80rpx; + background-color: #07c160; +} \ No newline at end of file diff --git a/src/map/miniprogram/pages/selectuserssuccess/index.js b/src/map/miniprogram/pages/selectuserssuccess/index.js new file mode 100644 index 0000000..ac586a6 --- /dev/null +++ b/src/map/miniprogram/pages/selectuserssuccess/index.js @@ -0,0 +1,66 @@ +// pages/selectuserssuccess/index.js +Page({ + + /** + * 页面的初始数据 + */ + data: { + + }, + + /** + * 生命周期函数--监听页面加载 + */ + onLoad(options) { + + }, + + /** + * 生命周期函数--监听页面初次渲染完成 + */ + onReady() { + + }, + + /** + * 生命周期函数--监听页面显示 + */ + onShow() { + + }, + + /** + * 生命周期函数--监听页面隐藏 + */ + onHide() { + + }, + + /** + * 生命周期函数--监听页面卸载 + */ + onUnload() { + + }, + + /** + * 页面相关事件处理函数--监听用户下拉动作 + */ + onPullDownRefresh() { + + }, + + /** + * 页面上拉触底事件的处理函数 + */ + onReachBottom() { + + }, + + /** + * 用户点击右上角分享 + */ + onShareAppMessage() { + + } +}) \ No newline at end of file diff --git a/src/map/miniprogram/pages/selectuserssuccess/index.wxml b/src/map/miniprogram/pages/selectuserssuccess/index.wxml new file mode 100644 index 0000000..9976e30 --- /dev/null +++ b/src/map/miniprogram/pages/selectuserssuccess/index.wxml @@ -0,0 +1,2 @@ + +pages/selectuserssuccess/index.wxml diff --git a/src/map/miniprogram/pages/text/text.js b/src/map/miniprogram/pages/text/text.js new file mode 100644 index 0000000..3370131 --- /dev/null +++ b/src/map/miniprogram/pages/text/text.js @@ -0,0 +1,81 @@ +// pages/text/text.js +Page({ + check() { + wx.navigateToMiniProgram({ + appId: 'wx5e77d1bb9e24f179', // 小程序B的appid** + path: 'pages/index/index', //小程序B的页面路径** + extraData: {}, + envVersion: 'release', //打开版本 开发版 develop;体验版trial; 正式版release + success(res) { + // 打开成功 + }, + fail(res){ + //打开失败 + } + }) + + }, + + /** + * 页面的初始数据 + */ + data: { + + }, + + /** + * 生命周期函数--监听页面加载 + */ + onLoad(options) { + + }, + + /** + * 生命周期函数--监听页面初次渲染完成 + */ + onReady() { + + }, + + /** + * 生命周期函数--监听页面显示 + */ + onShow() { + + }, + + /** + * 生命周期函数--监听页面隐藏 + */ + onHide() { + + }, + + /** + * 生命周期函数--监听页面卸载 + */ + onUnload() { + + }, + + /** + * 页面相关事件处理函数--监听用户下拉动作 + */ + onPullDownRefresh() { + + }, + + /** + * 页面上拉触底事件的处理函数 + */ + onReachBottom() { + + }, + + /** + * 用户点击右上角分享 + */ + onShareAppMessage() { + + } +}) \ No newline at end of file diff --git a/src/map/miniprogram/pages/text/text.json b/src/map/miniprogram/pages/text/text.json new file mode 100644 index 0000000..8835af0 --- /dev/null +++ b/src/map/miniprogram/pages/text/text.json @@ -0,0 +1,3 @@ +{ + "usingComponents": {} +} \ No newline at end of file diff --git a/src/map/miniprogram/pages/text/text.wxml b/src/map/miniprogram/pages/text/text.wxml new file mode 100644 index 0000000..d7496d0 --- /dev/null +++ b/src/map/miniprogram/pages/text/text.wxml @@ -0,0 +1,2 @@ + + diff --git a/src/map/miniprogram/pages/text/text.wxss b/src/map/miniprogram/pages/text/text.wxss new file mode 100644 index 0000000..25d00ed --- /dev/null +++ b/src/map/miniprogram/pages/text/text.wxss @@ -0,0 +1 @@ +/* pages/text/text.wxss */ \ No newline at end of file diff --git a/src/map/miniprogram/pages/updateusers/index.js b/src/map/miniprogram/pages/updateusers/index.js new file mode 100644 index 0000000..0702779 --- /dev/null +++ b/src/map/miniprogram/pages/updateusers/index.js @@ -0,0 +1,46 @@ +// pages/updateusers/index.js +Page({ + //修改数据(改) + inputupdateID:function(e){ + this.setData({ + updateUser_ID:e.detail.value + }) + }, + inputupdateCollege:function(e){ + this.setData({ + updateUser_College:e.detail.value + }) + }, + inputupdateKey:function(e){ + this.setData({ + updateUser_Key:e.detail.value + }) + }, + updateDataFn(){ + wx.cloud.callFunction({ + name: 'useroption', + data: { + option: 'update', + updateUser_ID:this.data.updateUser_ID, + updateUser_College:this.data.updateUser_College, + updateUser_Key:this.data.updateUser_Key + }, + success: res => { + wx.showToast({ + title: '用户修改成功', + }) + console.log(res) + }, + fail:err => { + wx.showToast({ + title: '用户修改失败', + }) + } + }) + }, + getback:function(){ + wx.navigateBack({ + delta:1, + }) + } +}) \ No newline at end of file diff --git a/src/map/miniprogram/pages/updateusers/index.json b/src/map/miniprogram/pages/updateusers/index.json new file mode 100644 index 0000000..8835af0 --- /dev/null +++ b/src/map/miniprogram/pages/updateusers/index.json @@ -0,0 +1,3 @@ +{ + "usingComponents": {} +} \ No newline at end of file diff --git a/src/map/miniprogram/pages/updateusers/index.wxml b/src/map/miniprogram/pages/updateusers/index.wxml new file mode 100644 index 0000000..82a32f7 --- /dev/null +++ b/src/map/miniprogram/pages/updateusers/index.wxml @@ -0,0 +1,24 @@ + + + + + + + + + + + + diff --git a/src/map/miniprogram/pages/updateusers/index.wxss b/src/map/miniprogram/pages/updateusers/index.wxss new file mode 100644 index 0000000..3d1e9e7 --- /dev/null +++ b/src/map/miniprogram/pages/updateusers/index.wxss @@ -0,0 +1,100 @@ +/* pages/updateusers/index.wxss */ + +page { + padding-top: 54rpx; + background-color: #f6f6f6; + padding-bottom: 60rpx; +} + +.button { + margin-top: 50px; + margin-left: 50px; + margin-right: 50px; +} + +.title { + font-family: PingFang SC; + font-weight: 500; + color: #000000; + font-size: 44rpx; + margin-bottom: 40rpx; +} + +.top_tip { + font-size: 28rpx; + font-family: PingFang SC; + font-weight: 400; + color: #888888; + margin-bottom: 28rpx; +} + +.power { + margin-top: 30rpx; + border-radius: 5px; + background-color: white; + width: 93%; + padding-bottom: 1rpx; +} + +.power_info { + display: flex; + padding: 30rpx 25rpx; + align-items: center; + justify-content: space-between; +} + +.power_info_more { + width: 30rpx; + height: 30rpx; + transform: rotate(90deg); +} + +.power_info_less { + width: 30rpx; + height: 30rpx; + transform: rotate(270deg); +} + +.power_info_text { + display: flex; + flex-direction: column; +} + +.power_info_text_title { + margin-bottom: 10rpx; + font-weight: 400; + font-size: 35rpx; +} + +.power_info_text_tip { + color: rgba(0, 0, 0, 0.4); + font-size: 25rpx; +} + +.power_item { + padding: 30rpx 25rpx; + display: flex; + justify-content: space-between; +} + +.power_item_title { + font-size: 30rpx; +} + +.power_item_icon { + width: 30rpx; + height: 30rpx; +} + +.line { + width: 95%; + margin: 0 auto; + height: 2rpx; + background-color: rgba(0, 0, 0, 0.1); +} + +.environment { + color: rgba(0, 0, 0, 0.4); + font-size: 24rpx; + margin-top: 25%; +} \ No newline at end of file diff --git a/src/map/miniprogram/pages/updateuserssuccess/index.js b/src/map/miniprogram/pages/updateuserssuccess/index.js new file mode 100644 index 0000000..ae7c08b --- /dev/null +++ b/src/map/miniprogram/pages/updateuserssuccess/index.js @@ -0,0 +1,66 @@ +// pages/updateuserssuccess/index.js +Page({ + + /** + * 页面的初始数据 + */ + data: { + + }, + + /** + * 生命周期函数--监听页面加载 + */ + onLoad(options) { + + }, + + /** + * 生命周期函数--监听页面初次渲染完成 + */ + onReady() { + + }, + + /** + * 生命周期函数--监听页面显示 + */ + onShow() { + + }, + + /** + * 生命周期函数--监听页面隐藏 + */ + onHide() { + + }, + + /** + * 生命周期函数--监听页面卸载 + */ + onUnload() { + + }, + + /** + * 页面相关事件处理函数--监听用户下拉动作 + */ + onPullDownRefresh() { + + }, + + /** + * 页面上拉触底事件的处理函数 + */ + onReachBottom() { + + }, + + /** + * 用户点击右上角分享 + */ + onShareAppMessage() { + + } +}) \ No newline at end of file diff --git a/src/map/miniprogram/pages/updateuserssuccess/index.wxml b/src/map/miniprogram/pages/updateuserssuccess/index.wxml new file mode 100644 index 0000000..8a0c4ef --- /dev/null +++ b/src/map/miniprogram/pages/updateuserssuccess/index.wxml @@ -0,0 +1,2 @@ + +pages/updateuserssuccess/index.wxml diff --git a/src/map/miniprogram/sitemap.json b/src/map/miniprogram/sitemap.json new file mode 100644 index 0000000..27b2b26 --- /dev/null +++ b/src/map/miniprogram/sitemap.json @@ -0,0 +1,7 @@ +{ + "desc": "关于本文件的更多信息,请参考文档 https://developers.weixin.qq.com/miniprogram/dev/framework/sitemap.html", + "rules": [{ + "action": "allow", + "page": "*" + }] +} \ No newline at end of file diff --git a/src/map/miniprogram/utils/Find directions.wxml b/src/map/miniprogram/utils/Find directions.wxml new file mode 100644 index 0000000..088eb73 --- /dev/null +++ b/src/map/miniprogram/utils/Find directions.wxml @@ -0,0 +1,13 @@ +出发地: + + +目的地: + + + + + + + \ No newline at end of file diff --git a/src/map/miniprogram/utils/amap-wx.js b/src/map/miniprogram/utils/amap-wx.js new file mode 100644 index 0000000..c8dd42d --- /dev/null +++ b/src/map/miniprogram/utils/amap-wx.js @@ -0,0 +1 @@ +function AMapWX(a) { this.key = a.key, this.requestConfig = { key: a.key, s: "rsx", platform: "WXJS", appname: a.key, sdkversion: "1.2.0", logversion: "2.0" } } AMapWX.prototype.getWxLocation = function (a, b) { wx.getLocation({ type: "gcj02", success: function (a) { var c = a.longitude + "," + a.latitude; wx.setStorage({ key: "userLocation", data: c }), b(c) }, fail: function (c) { wx.getStorage({ key: "userLocation", success: function (a) { a.data && b(a.data) } }), a.fail({ errCode: "0", errMsg: c.errMsg || "" }) } }) }, AMapWX.prototype.getRegeo = function (a) { function c(c) { var d = b.requestConfig; wx.request({ url: "https://restapi.amap.com/v3/geocode/regeo", data: { key: b.key, location: c, extensions: "all", s: d.s, platform: d.platform, appname: b.key, sdkversion: d.sdkversion, logversion: d.logversion }, method: "GET", header: { "content-type": "application/json" }, success: function (b) { var d, e, f, g, h, i, j, k; b.data.status && "1" == b.data.status ? (d = b.data.regeocode, e = d.addressComponent, f = [], g = d.roads[0].name + "附近", h = c.split(",")[0], i = c.split(",")[1], d.pois && d.pois[0] && (g = d.pois[0].name + "附近", j = d.pois[0].location, j && (h = parseFloat(j.split(",")[0]), i = parseFloat(j.split(",")[1]))), e.provice && f.push(e.provice), e.city && f.push(e.city), e.district && f.push(e.district), e.streetNumber && e.streetNumber.street && e.streetNumber.number ? (f.push(e.streetNumber.street), f.push(e.streetNumber.number)) : f.push(d.roads[0].name), f = f.join(""), k = [{ iconPath: a.iconPath, width: a.iconWidth, height: a.iconHeight, name: f, desc: g, longitude: h, latitude: i, id: 0, regeocodeData: d }], a.success(k)) : a.fail({ errCode: b.data.infocode, errMsg: b.data.info }) }, fail: function (b) { a.fail({ errCode: "0", errMsg: b.errMsg || "" }) } }) } var b = this; a.location ? c(a.location) : b.getWxLocation(a, function (a) { c(a) }) }, AMapWX.prototype.getWeather = function (a) { function d(d) { var e = "base"; a.type && "forecast" == a.type && (e = "all"), wx.request({ url: "https://restapi.amap.com/v3/weather/weatherInfo", data: { key: b.key, city: d, extensions: e, s: c.s, platform: c.platform, appname: b.key, sdkversion: c.sdkversion, logversion: c.logversion }, method: "GET", header: { "content-type": "application/json" }, success: function (b) { function c(a) { var b = { city: { text: "城市", data: a.city }, weather: { text: "天气", data: a.weather }, temperature: { text: "温度", data: a.temperature }, winddirection: { text: "风向", data: a.winddirection + "风" }, windpower: { text: "风力", data: a.windpower + "级" }, humidity: { text: "湿度", data: a.humidity + "%" } }; return b } var d, e; b.data.status && "1" == b.data.status ? b.data.lives ? (d = b.data.lives, d && d.length > 0 && (d = d[0], e = c(d), e["liveData"] = d, a.success(e))) : b.data.forecasts && b.data.forecasts[0] && a.success({ forecast: b.data.forecasts[0] }) : a.fail({ errCode: b.data.infocode, errMsg: b.data.info }) }, fail: function (b) { a.fail({ errCode: "0", errMsg: b.errMsg || "" }) } }) } function e(e) { wx.request({ url: "https://restapi.amap.com/v3/geocode/regeo", data: { key: b.key, location: e, extensions: "all", s: c.s, platform: c.platform, appname: b.key, sdkversion: c.sdkversion, logversion: c.logversion }, method: "GET", header: { "content-type": "application/json" }, success: function (b) { var c, e; b.data.status && "1" == b.data.status ? (e = b.data.regeocode, e.addressComponent ? c = e.addressComponent.adcode : e.aois && e.aois.length > 0 && (c = e.aois[0].adcode), d(c)) : a.fail({ errCode: b.data.infocode, errMsg: b.data.info }) }, fail: function (b) { a.fail({ errCode: "0", errMsg: b.errMsg || "" }) } }) } var b = this, c = b.requestConfig; a.city ? d(a.city) : b.getWxLocation(a, function (a) { e(a) }) }, AMapWX.prototype.getPoiAround = function (a) { function d(d) { var e = { key: b.key, location: d, s: c.s, platform: c.platform, appname: b.key, sdkversion: c.sdkversion, logversion: c.logversion }; a.querytypes && (e["types"] = a.querytypes), a.querykeywords && (e["keywords"] = a.querykeywords), wx.request({ url: "https://restapi.amap.com/v3/place/around", data: e, method: "GET", header: { "content-type": "application/json" }, success: function (b) { var c, d, e, f; if (b.data.status && "1" == b.data.status) { if (b = b.data, b && b.pois) { for (c = [], d = 0; d < b.pois.length; d++)e = 0 == d ? a.iconPathSelected : a.iconPath, c.push({ latitude: parseFloat(b.pois[d].location.split(",")[1]), longitude: parseFloat(b.pois[d].location.split(",")[0]), iconPath: e, width: 22, height: 32, id: d, name: b.pois[d].name, address: b.pois[d].address }); f = { markers: c, poisData: b.pois }, a.success(f) } } else a.fail({ errCode: b.data.infocode, errMsg: b.data.info }) }, fail: function (b) { a.fail({ errCode: "0", errMsg: b.errMsg || "" }) } }) } var b = this, c = b.requestConfig; a.location ? d(a.location) : b.getWxLocation(a, function (a) { d(a) }) }, AMapWX.prototype.getStaticmap = function (a) { function f(b) { c.push("location=" + b), a.zoom && c.push("zoom=" + a.zoom), a.size && c.push("size=" + a.size), a.scale && c.push("scale=" + a.scale), a.markers && c.push("markers=" + a.markers), a.labels && c.push("labels=" + a.labels), a.paths && c.push("paths=" + a.paths), a.traffic && c.push("traffic=" + a.traffic); var e = d + c.join("&"); a.success({ url: e }) } var e, b = this, c = [], d = "https://restapi.amap.com/v3/staticmap?"; c.push("key=" + b.key), e = b.requestConfig, c.push("s=" + e.s), c.push("platform=" + e.platform), c.push("appname=" + e.appname), c.push("sdkversion=" + e.sdkversion), c.push("logversion=" + e.logversion), a.location ? f(a.location) : b.getWxLocation(a, function (a) { f(a) }) }, AMapWX.prototype.getInputtips = function (a) { var b = this, c = b.requestConfig, d = { key: b.key, s: c.s, platform: c.platform, appname: b.key, sdkversion: c.sdkversion, logversion: c.logversion }; a.location && (d["location"] = a.location), a.keywords && (d["keywords"] = a.keywords), a.type && (d["type"] = a.type), a.city && (d["city"] = a.city), a.citylimit && (d["citylimit"] = a.citylimit), wx.request({ url: "https://restapi.amap.com/v3/assistant/inputtips", data: d, method: "GET", header: { "content-type": "application/json" }, success: function (b) { b && b.data && b.data.tips && a.success({ tips: b.data.tips }) }, fail: function (b) { a.fail({ errCode: "0", errMsg: b.errMsg || "" }) } }) }, AMapWX.prototype.getDrivingRoute = function (a) { var b = this, c = b.requestConfig, d = { key: b.key, s: c.s, platform: c.platform, appname: b.key, sdkversion: c.sdkversion, logversion: c.logversion }; a.origin && (d["origin"] = a.origin), a.destination && (d["destination"] = a.destination), a.strategy && (d["strategy"] = a.strategy), a.waypoints && (d["waypoints"] = a.waypoints), a.avoidpolygons && (d["avoidpolygons"] = a.avoidpolygons), a.avoidroad && (d["avoidroad"] = a.avoidroad), wx.request({ url: "https://restapi.amap.com/v3/direction/driving", data: d, method: "GET", header: { "content-type": "application/json" }, success: function (b) { b && b.data && b.data.route && a.success({ paths: b.data.route.paths, taxi_cost: b.data.route.taxi_cost || "" }) }, fail: function (b) { a.fail({ errCode: "0", errMsg: b.errMsg || "" }) } }) }, AMapWX.prototype.getWalkingRoute = function (a) { var b = this, c = b.requestConfig, d = { key: b.key, s: c.s, platform: c.platform, appname: b.key, sdkversion: c.sdkversion, logversion: c.logversion }; a.origin && (d["origin"] = a.origin), a.destination && (d["destination"] = a.destination), wx.request({ url: "https://restapi.amap.com/v3/direction/walking", data: d, method: "GET", header: { "content-type": "application/json" }, success: function (b) { b && b.data && b.data.route && a.success({ paths: b.data.route.paths }) }, fail: function (b) { a.fail({ errCode: "0", errMsg: b.errMsg || "" }) } }) }, AMapWX.prototype.getTransitRoute = function (a) { var b = this, c = b.requestConfig, d = { key: b.key, s: c.s, platform: c.platform, appname: b.key, sdkversion: c.sdkversion, logversion: c.logversion }; a.origin && (d["origin"] = a.origin), a.destination && (d["destination"] = a.destination), a.strategy && (d["strategy"] = a.strategy), a.city && (d["city"] = a.city), a.cityd && (d["cityd"] = a.cityd), wx.request({ url: "https://restapi.amap.com/v3/direction/transit/integrated", data: d, method: "GET", header: { "content-type": "application/json" }, success: function (b) { if (b && b.data && b.data.route) { var c = b.data.route; a.success({ distance: c.distance || "", taxi_cost: c.taxi_cost || "", transits: c.transits }) } }, fail: function (b) { a.fail({ errCode: "0", errMsg: b.errMsg || "" }) } }) }, AMapWX.prototype.getRidingRoute = function (a) { var b = this, c = b.requestConfig, d = { key: b.key, s: c.s, platform: c.platform, appname: b.key, sdkversion: c.sdkversion, logversion: c.logversion }; a.origin && (d["origin"] = a.origin), a.destination && (d["destination"] = a.destination), wx.request({ url: "https://restapi.amap.com/v3/direction/riding", data: d, method: "GET", header: { "content-type": "application/json" }, success: function (b) { b && b.data && b.data.route && a.success({ paths: b.data.route.paths }) }, fail: function (b) { a.fail({ errCode: "0", errMsg: b.errMsg || "" }) } }) }, module.exports.AMapWX = AMapWX; \ No newline at end of file diff --git a/src/map/miniprogram/utils/location.js b/src/map/miniprogram/utils/location.js new file mode 100644 index 0000000..f5e6edd --- /dev/null +++ b/src/map/miniprogram/utils/location.js @@ -0,0 +1,40 @@ +// Page({ +// data:{ +// location:[{ +// id:0, +// name:"中国民航大学南一教学楼", +// longitude: 116.481028, +// latitude: 39.989643, +// },{ +// id:1, +// name:"中国民航大学南二教学楼", +// longitude: 116.481028, +// latitude: 39.989643, +// },{ +// id:3, +// name:"中国民航大学南三教学楼", +// longitude: 116.481028, +// latitude: 39.989643, +// } +// ] +// } +// }) + +module.exports.location = [ + { + id:0, + name:"中国民航大学南一教学楼", + longitude: 116.481028, + latitude: 39.989643, + },{ + id:1, + name:"中国民航大学南二教学楼", + longitude: 116.481028, + latitude: 39.989643, + },{ + id:3, + name:"中国民航大学南三教学楼", + longitude: 116.481028, + latitude: 39.989643, + } +] \ No newline at end of file diff --git a/src/map/miniprogram/utils/qqmap-wx-jssdk.js b/src/map/miniprogram/utils/qqmap-wx-jssdk.js new file mode 100644 index 0000000..b114e29 --- /dev/null +++ b/src/map/miniprogram/utils/qqmap-wx-jssdk.js @@ -0,0 +1,741 @@ +/** + * 微信小程序JavaScriptSDK + * + * @version 1.1 + * @date 2019-01-20 + */ + +var ERROR_CONF = { + KEY_ERR: 311, + KEY_ERR_MSG: 'key格式错误', + PARAM_ERR: 310, + PARAM_ERR_MSG: '请求参数信息有误', + SYSTEM_ERR: 600, + SYSTEM_ERR_MSG: '系统错误', + WX_ERR_CODE: 1000, + WX_OK_CODE: 200 +}; +var BASE_URL = 'https://apis.map.qq.com/ws/'; +var URL_SEARCH = BASE_URL + 'place/v1/search'; +var URL_SUGGESTION = BASE_URL + 'place/v1/suggestion'; +var URL_GET_GEOCODER = BASE_URL + 'geocoder/v1/'; +var URL_CITY_LIST = BASE_URL + 'district/v1/list'; +var URL_AREA_LIST = BASE_URL + 'district/v1/getchildren'; +var URL_DISTANCE = BASE_URL + 'distance/v1/'; +var EARTH_RADIUS = 6378136.49; +var Utils = { + /** + * 得到终点query字符串 + * @param {Array|String} 检索数据 + */ + location2query(data) { + if (typeof data == 'string') { + return data; + } + var query = ''; + for (var i = 0; i < data.length; i++) { + var d = data[i]; + if (!!query) { + query += ';'; + } + if (d.location) { + query = query + d.location.lat + ',' + d.location.lng; + } + if (d.latitude && d.longitude) { + query = query + d.latitude + ',' + d.longitude; + } + } + return query; + }, + + /** + * 计算角度 + */ + rad(d) { + return d * Math.PI / 180.0; + }, + /** + * 处理终点location数组 + * @return 返回终点数组 + */ + getEndLocation(location){ + var to = location.split(';'); + var endLocation = []; + for (var i = 0; i < to.length; i++) { + endLocation.push({ + lat: parseFloat(to[i].split(',')[0]), + lng: parseFloat(to[i].split(',')[1]) + }) + } + return endLocation; + }, + + /** + * 计算两点间直线距离 + * @param a 表示纬度差 + * @param b 表示经度差 + * @return 返回的是距离,单位m + */ + getDistance(latFrom, lngFrom, latTo, lngTo) { + var radLatFrom = this.rad(latFrom); + var radLatTo = this.rad(latTo); + var a = radLatFrom - radLatTo; + var b = this.rad(lngFrom) - this.rad(lngTo); + var distance = 2 * Math.asin(Math.sqrt(Math.pow(Math.sin(a / 2), 2) + Math.cos(radLatFrom) * Math.cos(radLatTo) * Math.pow(Math.sin(b / 2), 2))); + distance = distance * EARTH_RADIUS; + distance = Math.round(distance * 10000) / 10000; + return parseFloat(distance.toFixed(0)); + }, + /** + * 使用微信接口进行定位 + */ + getWXLocation(success, fail, complete) { + wx.getLocation({ + type: 'gcj02', + success: success, + fail: fail, + complete: complete + }); + }, + + /** + * 获取location参数 + */ + getLocationParam(location) { + if (typeof location == 'string') { + var locationArr = location.split(','); + if (locationArr.length === 2) { + location = { + latitude: location.split(',')[0], + longitude: location.split(',')[1] + }; + } else { + location = {}; + } + } + return location; + }, + + /** + * 回调函数默认处理 + */ + polyfillParam(param) { + param.success = param.success || function () { }; + param.fail = param.fail || function () { }; + param.complete = param.complete || function () { }; + }, + + /** + * 验证param对应的key值是否为空 + * + * @param {Object} param 接口参数 + * @param {String} key 对应参数的key + */ + checkParamKeyEmpty(param, key) { + if (!param[key]) { + var errconf = this.buildErrorConfig(ERROR_CONF.PARAM_ERR, ERROR_CONF.PARAM_ERR_MSG + key +'参数格式有误'); + param.fail(errconf); + param.complete(errconf); + return true; + } + return false; + }, + + /** + * 验证参数中是否存在检索词keyword + * + * @param {Object} param 接口参数 + */ + checkKeyword(param){ + return !this.checkParamKeyEmpty(param, 'keyword'); + }, + + /** + * 验证location值 + * + * @param {Object} param 接口参数 + */ + checkLocation(param) { + var location = this.getLocationParam(param.location); + if (!location || !location.latitude || !location.longitude) { + var errconf = this.buildErrorConfig(ERROR_CONF.PARAM_ERR, ERROR_CONF.PARAM_ERR_MSG + ' location参数格式有误'); + param.fail(errconf); + param.complete(errconf); + return false; + } + return true; + }, + + /** + * 构造错误数据结构 + * @param {Number} errCode 错误码 + * @param {Number} errMsg 错误描述 + */ + buildErrorConfig(errCode, errMsg) { + return { + status: errCode, + message: errMsg + }; + }, + + /** + * + * 数据处理函数 + * 根据传入参数不同处理不同数据 + * @param {String} feature 功能名称 + * search 地点搜索 + * suggest关键词提示 + * reverseGeocoder逆地址解析 + * geocoder地址解析 + * getCityList获取城市列表:父集 + * getDistrictByCityId获取区县列表:子集 + * calculateDistance距离计算 + * @param {Object} param 接口参数 + * @param {Object} data 数据 + */ + handleData(param,data,feature){ + if (feature === 'search') { + var searchResult = data.data; + var searchSimplify = []; + for (var i = 0; i < searchResult.length; i++) { + searchSimplify.push({ + id: searchResult[i].id || null, + title: searchResult[i].title || null, + latitude: searchResult[i].location && searchResult[i].location.lat || null, + longitude: searchResult[i].location && searchResult[i].location.lng || null, + address: searchResult[i].address || null, + category: searchResult[i].category || null, + tel: searchResult[i].tel || null, + adcode: searchResult[i].ad_info && searchResult[i].ad_info.adcode || null, + city: searchResult[i].ad_info && searchResult[i].ad_info.city || null, + district: searchResult[i].ad_info && searchResult[i].ad_info.district || null, + province: searchResult[i].ad_info && searchResult[i].ad_info.province || null + }) + } + param.success(data, { + searchResult: searchResult, + searchSimplify: searchSimplify + }) + } else if (feature === 'suggest') { + var suggestResult = data.data; + var suggestSimplify = []; + for (var i = 0; i < suggestResult.length; i++) { + suggestSimplify.push({ + adcode: suggestResult[i].adcode || null, + address: suggestResult[i].address || null, + category: suggestResult[i].category || null, + city: suggestResult[i].city || null, + district: suggestResult[i].district || null, + id: suggestResult[i].id || null, + latitude: suggestResult[i].location && suggestResult[i].location.lat || null, + longitude: suggestResult[i].location && suggestResult[i].location.lng || null, + province: suggestResult[i].province || null, + title: suggestResult[i].title || null, + type: suggestResult[i].type || null + }) + } + param.success(data, { + suggestResult: suggestResult, + suggestSimplify: suggestSimplify + }) + } else if (feature === 'reverseGeocoder') { + var reverseGeocoderResult = data.result; + var reverseGeocoderSimplify = { + address: reverseGeocoderResult.address || null, + latitude: reverseGeocoderResult.location && reverseGeocoderResult.location.lat || null, + longitude: reverseGeocoderResult.location && reverseGeocoderResult.location.lng || null, + adcode: reverseGeocoderResult.ad_info && reverseGeocoderResult.ad_info.adcode || null, + city: reverseGeocoderResult.address_component && reverseGeocoderResult.address_component.city || null, + district: reverseGeocoderResult.address_component && reverseGeocoderResult.address_component.district || null, + nation: reverseGeocoderResult.address_component && reverseGeocoderResult.address_component.nation || null, + province: reverseGeocoderResult.address_component && reverseGeocoderResult.address_component.province || null, + street: reverseGeocoderResult.address_component && reverseGeocoderResult.address_component.street || null, + street_number: reverseGeocoderResult.address_component && reverseGeocoderResult.address_component.street_number || null, + recommend: reverseGeocoderResult.formatted_addresses && reverseGeocoderResult.formatted_addresses.recommend || null, + rough: reverseGeocoderResult.formatted_addresses && reverseGeocoderResult.formatted_addresses.rough || null + }; + if (reverseGeocoderResult.pois) {//判断是否返回周边poi + var pois = reverseGeocoderResult.pois; + var poisSimplify = []; + for (var i = 0;i < pois.length;i++) { + poisSimplify.push({ + id: pois[i].id || null, + title: pois[i].title || null, + latitude: pois[i].location && pois[i].location.lat || null, + longitude: pois[i].location && pois[i].location.lng || null, + address: pois[i].address || null, + category: pois[i].category || null, + adcode: pois[i].ad_info && pois[i].ad_info.adcode || null, + city: pois[i].ad_info && pois[i].ad_info.city || null, + district: pois[i].ad_info && pois[i].ad_info.district || null, + province: pois[i].ad_info && pois[i].ad_info.province || null + }) + } + param.success(data,{ + reverseGeocoderResult: reverseGeocoderResult, + reverseGeocoderSimplify: reverseGeocoderSimplify, + pois: pois, + poisSimplify: poisSimplify + }) + } else { + param.success(data, { + reverseGeocoderResult: reverseGeocoderResult, + reverseGeocoderSimplify: reverseGeocoderSimplify + }) + } + } else if (feature === 'geocoder') { + var geocoderResult = data.result; + var geocoderSimplify = { + title: geocoderResult.title || null, + latitude: geocoderResult.location && geocoderResult.location.lat || null, + longitude: geocoderResult.location && geocoderResult.location.lng || null, + adcode: geocoderResult.ad_info && geocoderResult.ad_info.adcode || null, + province: geocoderResult.address_components && geocoderResult.address_components.province || null, + city: geocoderResult.address_components && geocoderResult.address_components.city || null, + district: geocoderResult.address_components && geocoderResult.address_components.district || null, + street: geocoderResult.address_components && geocoderResult.address_components.street || null, + street_number: geocoderResult.address_components && geocoderResult.address_components.street_number || null, + level: geocoderResult.level || null + }; + param.success(data,{ + geocoderResult: geocoderResult, + geocoderSimplify: geocoderSimplify + }); + } else if (feature === 'getCityList') { + var provinceResult = data.result[0]; + var cityResult = data.result[1]; + var districtResult = data.result[2]; + param.success(data,{ + provinceResult: provinceResult, + cityResult: cityResult, + districtResult: districtResult + }); + } else if (feature === 'getDistrictByCityId') { + var districtByCity = data.result[0]; + param.success(data, districtByCity); + } else if (feature === 'calculateDistance') { + var calculateDistanceResult = data.result.elements; + var distance = []; + for (var i = 0; i < calculateDistanceResult.length; i++){ + distance.push(calculateDistanceResult[i].distance); + } + param.success(data, { + calculateDistanceResult: calculateDistanceResult, + distance: distance + }); + } else { + param.success(data); + } + }, + + /** + * 构造微信请求参数,公共属性处理 + * + * @param {Object} param 接口参数 + * @param {Object} param 配置项 + * @param {String} feature 方法名 + */ + buildWxRequestConfig(param, options, feature) { + var that = this; + options.header = { "content-type": "application/json" }; + options.method = 'GET'; + options.success = function (res) { + var data = res.data; + if (data.status === 0) { + that.handleData(param, data, feature); + } else { + param.fail(data); + } + }; + options.fail = function (res) { + res.statusCode = ERROR_CONF.WX_ERR_CODE; + param.fail(that.buildErrorConfig(ERROR_CONF.WX_ERR_CODE, res.errMsg)); + }; + options.complete = function (res) { + var statusCode = +res.statusCode; + switch(statusCode) { + case ERROR_CONF.WX_ERR_CODE: { + param.complete(that.buildErrorConfig(ERROR_CONF.WX_ERR_CODE, res.errMsg)); + break; + } + case ERROR_CONF.WX_OK_CODE: { + var data = res.data; + if (data.status === 0) { + param.complete(data); + } else { + param.complete(that.buildErrorConfig(data.status, data.message)); + } + break; + } + default:{ + param.complete(that.buildErrorConfig(ERROR_CONF.SYSTEM_ERR, ERROR_CONF.SYSTEM_ERR_MSG)); + } + + } + }; + return options; + }, + + /** + * 处理用户参数是否传入坐标进行不同的处理 + */ + locationProcess(param, locationsuccess, locationfail, locationcomplete) { + var that = this; + locationfail = locationfail || function (res) { + res.statusCode = ERROR_CONF.WX_ERR_CODE; + param.fail(that.buildErrorConfig(ERROR_CONF.WX_ERR_CODE, res.errMsg)); + }; + locationcomplete = locationcomplete || function (res) { + if (res.statusCode == ERROR_CONF.WX_ERR_CODE) { + param.complete(that.buildErrorConfig(ERROR_CONF.WX_ERR_CODE, res.errMsg)); + } + }; + if (!param.location) { + that.getWXLocation(locationsuccess, locationfail, locationcomplete); + } else if (that.checkLocation(param)) { + var location = Utils.getLocationParam(param.location); + locationsuccess(location); + } + } +}; + + +class QQMapWX { + + /** + * 构造函数 + * + * @param {Object} options 接口参数,key 为必选参数 + */ + constructor(options) { + if (!options.key) { + throw Error('key值不能为空'); + } + this.key = options.key; + }; + + /** + * POI周边检索 + * + * @param {Object} options 接口参数对象 + * + * 参数对象结构可以参考 + * @see http://lbs.qq.com/webservice_v1/guide-search.html + */ + search(options) { + var that = this; + options = options || {}; + + Utils.polyfillParam(options); + + if (!Utils.checkKeyword(options)) { + return; + } + + var requestParam = { + keyword: options.keyword, + orderby: options.orderby || '_distance', + page_size: options.page_size || 10, + page_index: options.page_index || 1, + output: 'json', + key: that.key + }; + + if (options.address_format) { + requestParam.address_format = options.address_format; + } + + if (options.filter) { + requestParam.filter = options.filter; + } + + var distance = options.distance || "1000"; + var auto_extend = options.auto_extend || 1; + var region = null; + var rectangle = null; + + //判断城市限定参数 + if (options.region) { + region = options.region; + } + + //矩形限定坐标(暂时只支持字符串格式) + if (options.rectangle) { + rectangle = options.rectangle; + } + + var locationsuccess = function (result) { + if (region && !rectangle) { + //城市限定参数拼接 + requestParam.boundary = "region(" + region + "," + auto_extend + "," + result.latitude + "," + result.longitude + ")"; + } else if (rectangle && !region) { + //矩形搜索 + requestParam.boundary = "rectangle(" + rectangle + ")"; + } else { + requestParam.boundary = "nearby(" + result.latitude + "," + result.longitude + "," + distance + "," + auto_extend + ")"; + } + wx.request(Utils.buildWxRequestConfig(options, { + url: URL_SEARCH, + data: requestParam + }, 'search')); + }; + Utils.locationProcess(options, locationsuccess); + }; + + /** + * sug模糊检索 + * + * @param {Object} options 接口参数对象 + * + * 参数对象结构可以参考 + * http://lbs.qq.com/webservice_v1/guide-suggestion.html + */ + getSuggestion(options) { + var that = this; + options = options || {}; + Utils.polyfillParam(options); + + if (!Utils.checkKeyword(options)) { + return; + } + + var requestParam = { + keyword: options.keyword, + region: options.region || '全国', + region_fix: options.region_fix || 0, + policy: options.policy || 0, + page_size: options.page_size || 10,//控制显示条数 + page_index: options.page_index || 1,//控制页数 + get_subpois : options.get_subpois || 0,//返回子地点 + output: 'json', + key: that.key + }; + //长地址 + if (options.address_format) { + requestParam.address_format = options.address_format; + } + //过滤 + if (options.filter) { + requestParam.filter = options.filter; + } + //排序 + if (options.location) { + var locationsuccess = function (result) { + requestParam.location = result.latitude + ',' + result.longitude; + wx.request(Utils.buildWxRequestConfig(options, { + url: URL_SUGGESTION, + data: requestParam + }, "suggest")); + }; + Utils.locationProcess(options, locationsuccess); + } else { + wx.request(Utils.buildWxRequestConfig(options, { + url: URL_SUGGESTION, + data: requestParam + }, "suggest")); + } + }; + + /** + * 逆地址解析 + * + * @param {Object} options 接口参数对象 + * + * 请求参数结构可以参考 + * http://lbs.qq.com/webservice_v1/guide-gcoder.html + */ + reverseGeocoder(options) { + var that = this; + options = options || {}; + Utils.polyfillParam(options); + var requestParam = { + coord_type: options.coord_type || 5, + get_poi: options.get_poi || 0, + output: 'json', + key: that.key + }; + if (options.poi_options) { + requestParam.poi_options = options.poi_options + } + + var locationsuccess = function (result) { + requestParam.location = result.latitude + ',' + result.longitude; + wx.request(Utils.buildWxRequestConfig(options, { + url: URL_GET_GEOCODER, + data: requestParam + }, 'reverseGeocoder')); + }; + Utils.locationProcess(options, locationsuccess); + }; + + /** + * 地址解析 + * + * @param {Object} options 接口参数对象 + * + * 请求参数结构可以参考 + * http://lbs.qq.com/webservice_v1/guide-geocoder.html + */ + geocoder(options) { + var that = this; + options = options || {}; + Utils.polyfillParam(options); + + if (Utils.checkParamKeyEmpty(options, 'address')) { + return; + } + + var requestParam = { + address: options.address, + output: 'json', + key: that.key + }; + + //城市限定 + if (options.region) { + requestParam.region = options.region; + } + + wx.request(Utils.buildWxRequestConfig(options, { + url: URL_GET_GEOCODER, + data: requestParam + },'geocoder')); + }; + + + /** + * 获取城市列表 + * + * @param {Object} options 接口参数对象 + * + * 请求参数结构可以参考 + * http://lbs.qq.com/webservice_v1/guide-region.html + */ + getCityList(options) { + var that = this; + options = options || {}; + Utils.polyfillParam(options); + var requestParam = { + output: 'json', + key: that.key + }; + + wx.request(Utils.buildWxRequestConfig(options, { + url: URL_CITY_LIST, + data: requestParam + },'getCityList')); + }; + + /** + * 获取对应城市ID的区县列表 + * + * @param {Object} options 接口参数对象 + * + * 请求参数结构可以参考 + * http://lbs.qq.com/webservice_v1/guide-region.html + */ + getDistrictByCityId(options) { + var that = this; + options = options || {}; + Utils.polyfillParam(options); + + if (Utils.checkParamKeyEmpty(options, 'id')) { + return; + } + + var requestParam = { + id: options.id || '', + output: 'json', + key: that.key + }; + + wx.request(Utils.buildWxRequestConfig(options, { + url: URL_AREA_LIST, + data: requestParam + },'getDistrictByCityId')); + }; + + /** + * 用于单起点到多终点的路线距离(非直线距离)计算: + * 支持两种距离计算方式:步行和驾车。 + * 起点到终点最大限制直线距离10公里。 + * + * 新增直线距离计算。 + * + * @param {Object} options 接口参数对象 + * + * 请求参数结构可以参考 + * http://lbs.qq.com/webservice_v1/guide-distance.html + */ + calculateDistance(options) { + var that = this; + options = options || {}; + Utils.polyfillParam(options); + + if (Utils.checkParamKeyEmpty(options, 'to')) { + return; + } + + var requestParam = { + mode: options.mode || 'walking', + to: Utils.location2query(options.to), + output: 'json', + key: that.key + }; + + if (options.from) { + options.location = options.from; + } + + //计算直线距离 + if(requestParam.mode == 'straight'){ + var locationsuccess = function (result) { + var locationTo = Utils.getEndLocation(requestParam.to);//处理终点坐标 + var data = { + message:"query ok", + result:{ + elements:[] + }, + status:0 + }; + for (var i = 0; i < locationTo.length; i++) { + data.result.elements.push({//将坐标存入 + distance: Utils.getDistance(result.latitude, result.longitude, locationTo[i].lat, locationTo[i].lng), + duration:0, + from:{ + lat: result.latitude, + lng:result.longitude + }, + to:{ + lat: locationTo[i].lat, + lng: locationTo[i].lng + } + }); + } + var calculateResult = data.result.elements; + var distanceResult = []; + for (var i = 0; i < calculateResult.length; i++) { + distanceResult.push(calculateResult[i].distance); + } + return options.success(data,{ + calculateResult: calculateResult, + distanceResult: distanceResult + }); + }; + + Utils.locationProcess(options, locationsuccess); + } else { + var locationsuccess = function (result) { + requestParam.from = result.latitude + ',' + result.longitude; + wx.request(Utils.buildWxRequestConfig(options, { + url: URL_DISTANCE, + data: requestParam + },'calculateDistance')); + }; + + Utils.locationProcess(options, locationsuccess); + } + } +}; + +module.exports = QQMapWX; \ No newline at end of file diff --git a/src/map/miniprogram/utils/qqmap-wx-jssdk.min.js b/src/map/miniprogram/utils/qqmap-wx-jssdk.min.js new file mode 100644 index 0000000..b8fbad4 --- /dev/null +++ b/src/map/miniprogram/utils/qqmap-wx-jssdk.min.js @@ -0,0 +1,3 @@ +var ERROR_CONF={KEY_ERR:311,KEY_ERR_MSG:'key格式错误',PARAM_ERR:310,PARAM_ERR_MSG:'请求参数信息有误',SYSTEM_ERR:600,SYSTEM_ERR_MSG:'系统错误',WX_ERR_CODE:1000,WX_OK_CODE:200};var BASE_URL='https://apis.map.qq.com/ws/';var URL_SEARCH=BASE_URL+'place/v1/search';var URL_SUGGESTION=BASE_URL+'place/v1/suggestion';var URL_GET_GEOCODER=BASE_URL+'geocoder/v1/';var URL_CITY_LIST=BASE_URL+'district/v1/list';var URL_AREA_LIST=BASE_URL+'district/v1/getchildren';var URL_DISTANCE=BASE_URL+'distance/v1/';var EARTH_RADIUS=6378136.49;var Utils={location2query(data){if(typeof data=='string'){return data}var query='';for(var i=0;i { + return cloud.database().collection("Vote").get() +} diff --git a/src/公告栏-用户部分/cloudfunctions/get_allvote/package.json b/src/公告栏-用户部分/cloudfunctions/get_allvote/package.json new file mode 100644 index 0000000..f34af47 --- /dev/null +++ b/src/公告栏-用户部分/cloudfunctions/get_allvote/package.json @@ -0,0 +1,14 @@ +{ + "name": "get_allvote", + "version": "1.0.0", + "description": "", + "main": "index.js", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "author": "", + "license": "ISC", + "dependencies": { + "wx-server-sdk": "~2.6.1" + } +} \ No newline at end of file diff --git a/src/公告栏-用户部分/cloudfunctions/openid/config.json b/src/公告栏-用户部分/cloudfunctions/openid/config.json new file mode 100644 index 0000000..8117c41 --- /dev/null +++ b/src/公告栏-用户部分/cloudfunctions/openid/config.json @@ -0,0 +1,6 @@ +{ + "permissions": { + "openapi": [ + ] + } +} \ No newline at end of file diff --git a/src/公告栏-用户部分/cloudfunctions/openid/index.js b/src/公告栏-用户部分/cloudfunctions/openid/index.js new file mode 100644 index 0000000..fb682ec --- /dev/null +++ b/src/公告栏-用户部分/cloudfunctions/openid/index.js @@ -0,0 +1,16 @@ +// 云函数入口文件 +const cloud = require('wx-server-sdk') + +cloud.init() + +// 云函数入口函数 +exports.main = async (event, context) => { + const wxContext = cloud.getWXContext() + + return { + event, + openid: wxContext.OPENID, + appid: wxContext.APPID, + unionid: wxContext.UNIONID, + } +} \ No newline at end of file diff --git a/src/公告栏-用户部分/cloudfunctions/openid/package.json b/src/公告栏-用户部分/cloudfunctions/openid/package.json new file mode 100644 index 0000000..6d18ebb --- /dev/null +++ b/src/公告栏-用户部分/cloudfunctions/openid/package.json @@ -0,0 +1,14 @@ +{ + "name": "openid", + "version": "1.0.0", + "description": "", + "main": "index.js", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "author": "", + "license": "ISC", + "dependencies": { + "wx-server-sdk": "~2.6.1" + } +} \ No newline at end of file diff --git a/src/公告栏-用户部分/miniprogram/app.js b/src/公告栏-用户部分/miniprogram/app.js new file mode 100644 index 0000000..fa13e7d --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/app.js @@ -0,0 +1,39 @@ +// app.js +App({ + getOpenId:null, + + onLaunch: function () { + if (!wx.cloud) { + console.error('请使用 2.2.3 或以上的基础库以使用云能力'); + } else { + wx.cloud.init({ + // env 参数说明: + // env 参数决定接下来小程序发起的云开发调用(wx.cloud.xxx)会默认请求到哪个云环境的资源 + // 此处请填入环境 ID, 环境 ID 可打开云控制台查看 + // 如不填则使用默认环境(第一个创建的环境) + env: 'cloud1-5gsqi02q8e4bd2dc', + traceUser: true, + }); + + this.getOpenId = (function(that){ + return new Promise((resolve, reject) =>{ + wx.cloud.callFunction({ + name: 'openid', + data: {}, + success: res => { + that.globalData.openid = res.result.openid + wx.setStorageSync('openid', res.result.openid) + resolve(res.result.openid) + }, + fail: err => { + console.error('调用失败', err) + } + }) + }) + })(this) + + } + + this.globalData = {}; + } +}); diff --git a/src/公告栏-用户部分/miniprogram/app.json b/src/公告栏-用户部分/miniprogram/app.json new file mode 100644 index 0000000..2ee584e --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/app.json @@ -0,0 +1,50 @@ +{ + "pages": [ + "pages/index/index", + "pages/main/index", + "pages/mine/index", + "pages/voteContent/index", + "pages/voteInfo/index", + "pages/searchPage/index", + "pages/joinedPage/index", + "pages/postPage/index", + "pages/carePage/index", + "pages/TnPage/index", + "pages/cs/index" + ], + "window": { + "backgroundColor": "#5ea6e9", + "backgroundTextStyle": "light", + "navigationBarBackgroundColor": "#5ea6e9", + "navigationBarTitleText": "公告栏", + "navigationBarTextStyle": "white" + }, + "tabBar": { + "color": "#6f6f6f", + "selectedColor": "#FF0000", + "borderStyle": "white", + "list": [ + { + "selectedIconPath": "images/首页选中.png", + "iconPath": "images/首页默认.png", + "pagePath": "pages/index/index", + "text": "首页" + }, + { + "selectedIconPath": "images/用户选中.png", + "iconPath": "images/用户默认.png", + "pagePath": "pages/mine/index", + "text": "我的" + } + ] + }, + "sitemapLocation": "sitemap.json", + "usingComponents": { + "van-cell": "@vant/weapp/cell/index", + "van-cell-group": "@vant/weapp/cell-group/index", + "van-search": "@vant/weapp/search/index", + "van-tab": "@vant/weapp/tab/index", + "van-tabs": "@vant/weapp/tabs/index", + "van-button": "@vant/weapp/button/index" + } +} \ No newline at end of file diff --git a/src/公告栏-用户部分/miniprogram/app.wxss b/src/公告栏-用户部分/miniprogram/app.wxss new file mode 100644 index 0000000..da2105a --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/app.wxss @@ -0,0 +1,31 @@ +/**app.wxss**/ +.container { + /*display: flex;*/ + flex-direction: column; + align-items: center; + box-sizing: border-box; + margin: auto; +} + +button { + background: initial; +} + +button:focus{ + outline: 0; +} + +button::after{ + border: none; +} + + +page { + background: #fafafa; + /*display: flex;*/ + margin: auto; + flex-direction: column; + justify-content: flex-start; +} + + diff --git a/src/公告栏-用户部分/miniprogram/components/cloudTipModal/index.js b/src/公告栏-用户部分/miniprogram/components/cloudTipModal/index.js new file mode 100644 index 0000000..f5ca0c1 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/components/cloudTipModal/index.js @@ -0,0 +1,37 @@ +// miniprogram/components/cloudTipModal/index.js +const { isMac } = require('../../envList.js'); + +Component({ + + /** + * 页面的初始数据 + */ + data: { + showUploadTip: false, + tipText: isMac ? 'sh ./uploadCloudFunction.sh' : './uploadCloudFunction.bat' + }, + properties: { + showUploadTipProps: Boolean + }, + observers: { + showUploadTipProps: function(showUploadTipProps) { + this.setData({ + showUploadTip: showUploadTipProps + }); + } + }, + methods: { + onChangeShowUploadTip() { + this.setData({ + showUploadTip: !this.data.showUploadTip + }); + }, + + copyShell() { + wx.setClipboardData({ + data: this.data.tipText, + }); + }, + } + +}); diff --git a/src/公告栏-用户部分/miniprogram/components/cloudTipModal/index.json b/src/公告栏-用户部分/miniprogram/components/cloudTipModal/index.json new file mode 100644 index 0000000..4575d1b --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/components/cloudTipModal/index.json @@ -0,0 +1,4 @@ +{ + "usingComponents": {}, + "component": true +} \ No newline at end of file diff --git a/src/公告栏-用户部分/miniprogram/components/cloudTipModal/index.wxml b/src/公告栏-用户部分/miniprogram/components/cloudTipModal/index.wxml new file mode 100644 index 0000000..5611267 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/components/cloudTipModal/index.wxml @@ -0,0 +1,13 @@ + + + + + 体验前需部署云资源 + 请开启调试器进入终端窗口,复制并运行以下命令 + + {{tipText}} + 复制 + + 已执行命令 + + diff --git a/src/公告栏-用户部分/miniprogram/components/cloudTipModal/index.wxss b/src/公告栏-用户部分/miniprogram/components/cloudTipModal/index.wxss new file mode 100644 index 0000000..ae36531 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/components/cloudTipModal/index.wxss @@ -0,0 +1,57 @@ +.install_tip_back { + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + background-color: rgba(0,0,0,0.4); + z-index: 1; +} + +.install_tip_detail { + position: fixed; + background-color: white; + right: 0; + bottom: 0; + left: 0; + top: 60%; + border-radius: 40rpx 40rpx 0 0; + padding: 50rpx; + z-index: 9; +} + +.install_tip_detail_title { + font-weight: 400; + font-size: 40rpx; + text-align: center; +} + +.install_tip_detail_tip { + font-size: 25rpx; + color: rgba(0,0,0,0.4); + margin-top: 20rpx; + text-align: center; +} + +.install_tip_detail_shell { + margin: 70rpx 0; + display: flex; + justify-content: center; +} + +.install_tip_detail_copy { + color: #546488; + margin-left: 10rpx; +} + +.install_tip_detail_button { + color: #07C160; + font-weight: 500; + background-color: rgba(0,0,0,0.1); + width: 60%; + text-align: center; + height: 90rpx; + line-height: 90rpx; + border-radius: 10rpx; + margin: 0 auto; +} \ No newline at end of file diff --git a/src/公告栏-用户部分/miniprogram/envList.js b/src/公告栏-用户部分/miniprogram/envList.js new file mode 100644 index 0000000..f50dfea --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/envList.js @@ -0,0 +1,6 @@ +const envList = [{"envId":"ttt-2gsjqs8sce83fdc0","alias":"ttt"}] +const isMac = false +module.exports = { + envList, + isMac +} \ No newline at end of file diff --git a/src/公告栏-用户部分/miniprogram/images/BK.png b/src/公告栏-用户部分/miniprogram/images/BK.png new file mode 100644 index 0000000..6b2f621 Binary files /dev/null and b/src/公告栏-用户部分/miniprogram/images/BK.png differ diff --git a/src/公告栏-用户部分/miniprogram/images/choose.png b/src/公告栏-用户部分/miniprogram/images/choose.png new file mode 100644 index 0000000..39de2a8 Binary files /dev/null and b/src/公告栏-用户部分/miniprogram/images/choose.png differ diff --git a/src/公告栏-用户部分/miniprogram/images/关注.png b/src/公告栏-用户部分/miniprogram/images/关注.png new file mode 100644 index 0000000..d02bdf2 Binary files /dev/null and b/src/公告栏-用户部分/miniprogram/images/关注.png differ diff --git a/src/公告栏-用户部分/miniprogram/images/删除.png b/src/公告栏-用户部分/miniprogram/images/删除.png new file mode 100644 index 0000000..6b0f142 Binary files /dev/null and b/src/公告栏-用户部分/miniprogram/images/删除.png differ diff --git a/src/公告栏-用户部分/miniprogram/images/时钟.png b/src/公告栏-用户部分/miniprogram/images/时钟.png new file mode 100644 index 0000000..e75ed8a Binary files /dev/null and b/src/公告栏-用户部分/miniprogram/images/时钟.png differ diff --git a/src/公告栏-用户部分/miniprogram/images/未关注.png b/src/公告栏-用户部分/miniprogram/images/未关注.png new file mode 100644 index 0000000..133c44f Binary files /dev/null and b/src/公告栏-用户部分/miniprogram/images/未关注.png differ diff --git a/src/公告栏-用户部分/miniprogram/images/添加选中.png b/src/公告栏-用户部分/miniprogram/images/添加选中.png new file mode 100644 index 0000000..4059370 Binary files /dev/null and b/src/公告栏-用户部分/miniprogram/images/添加选中.png differ diff --git a/src/公告栏-用户部分/miniprogram/images/添加默认.png b/src/公告栏-用户部分/miniprogram/images/添加默认.png new file mode 100644 index 0000000..57dbfce Binary files /dev/null and b/src/公告栏-用户部分/miniprogram/images/添加默认.png differ diff --git a/src/公告栏-用户部分/miniprogram/images/用户选中.png b/src/公告栏-用户部分/miniprogram/images/用户选中.png new file mode 100644 index 0000000..7f92ba7 Binary files /dev/null and b/src/公告栏-用户部分/miniprogram/images/用户选中.png differ diff --git a/src/公告栏-用户部分/miniprogram/images/用户默认.png b/src/公告栏-用户部分/miniprogram/images/用户默认.png new file mode 100644 index 0000000..4aa0da2 Binary files /dev/null and b/src/公告栏-用户部分/miniprogram/images/用户默认.png differ diff --git a/src/公告栏-用户部分/miniprogram/images/转发.png b/src/公告栏-用户部分/miniprogram/images/转发.png new file mode 100644 index 0000000..f7ddc35 Binary files /dev/null and b/src/公告栏-用户部分/miniprogram/images/转发.png differ diff --git a/src/公告栏-用户部分/miniprogram/images/首页选中.png b/src/公告栏-用户部分/miniprogram/images/首页选中.png new file mode 100644 index 0000000..cd8ee69 Binary files /dev/null and b/src/公告栏-用户部分/miniprogram/images/首页选中.png differ diff --git a/src/公告栏-用户部分/miniprogram/images/首页默认.png b/src/公告栏-用户部分/miniprogram/images/首页默认.png new file mode 100644 index 0000000..4c8af5f Binary files /dev/null and b/src/公告栏-用户部分/miniprogram/images/首页默认.png differ diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/action-sheet/index.d.ts b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/action-sheet/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/action-sheet/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/action-sheet/index.js b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/action-sheet/index.js new file mode 100644 index 0000000..b7af646 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/action-sheet/index.js @@ -0,0 +1,73 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var button_1 = require("../mixins/button"); +(0, component_1.VantComponent)({ + mixins: [button_1.button], + props: { + show: Boolean, + title: String, + cancelText: String, + description: String, + round: { + type: Boolean, + value: true, + }, + zIndex: { + type: Number, + value: 100, + }, + actions: { + type: Array, + value: [], + }, + overlay: { + type: Boolean, + value: true, + }, + closeOnClickOverlay: { + type: Boolean, + value: true, + }, + closeOnClickAction: { + type: Boolean, + value: true, + }, + safeAreaInsetBottom: { + type: Boolean, + value: true, + }, + }, + methods: { + onSelect: function (event) { + var _this = this; + var index = event.currentTarget.dataset.index; + var _a = this.data, actions = _a.actions, closeOnClickAction = _a.closeOnClickAction, canIUseGetUserProfile = _a.canIUseGetUserProfile; + var item = actions[index]; + if (item) { + this.$emit('select', item); + if (closeOnClickAction) { + this.onClose(); + } + if (item.openType === 'getUserInfo' && canIUseGetUserProfile) { + wx.getUserProfile({ + desc: item.getUserProfileDesc || ' ', + complete: function (userProfile) { + _this.$emit('getuserinfo', userProfile); + }, + }); + } + } + }, + onCancel: function () { + this.$emit('cancel'); + }, + onClose: function () { + this.$emit('close'); + }, + onClickOverlay: function () { + this.$emit('click-overlay'); + this.onClose(); + }, + }, +}); diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/action-sheet/index.json b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/action-sheet/index.json new file mode 100644 index 0000000..19bf989 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/action-sheet/index.json @@ -0,0 +1,8 @@ +{ + "component": true, + "usingComponents": { + "van-icon": "../icon/index", + "van-popup": "../popup/index", + "van-loading": "../loading/index" + } +} diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/action-sheet/index.wxml b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/action-sheet/index.wxml new file mode 100644 index 0000000..b04cc3a --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/action-sheet/index.wxml @@ -0,0 +1,69 @@ + + + + + {{ title }} + + + + {{ description }} + + + + + + + + + + {{ cancelText }} + + + diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/action-sheet/index.wxss b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/action-sheet/index.wxss new file mode 100644 index 0000000..eedd361 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/action-sheet/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-action-sheet{color:var(--action-sheet-item-text-color,#323233);max-height:var(--action-sheet-max-height,90%)!important}.van-action-sheet__cancel,.van-action-sheet__item{background-color:var(--action-sheet-item-background,#fff);font-size:var(--action-sheet-item-font-size,16px);line-height:var(--action-sheet-item-line-height,22px);padding:14px 16px;text-align:center}.van-action-sheet__cancel--hover,.van-action-sheet__item--hover{background-color:#f2f3f5}.van-action-sheet__cancel:after,.van-action-sheet__item:after{border-width:0}.van-action-sheet__cancel{color:var(--action-sheet-cancel-text-color,#646566)}.van-action-sheet__gap{background-color:var(--action-sheet-cancel-padding-color,#f7f8fa);display:block;height:var(--action-sheet-cancel-padding-top,8px)}.van-action-sheet__item--disabled{color:var(--action-sheet-item-disabled-text-color,#c8c9cc)}.van-action-sheet__item--disabled.van-action-sheet__item--hover{background-color:var(--action-sheet-item-background,#fff)}.van-action-sheet__subname{color:var(--action-sheet-subname-color,#969799);font-size:var(--action-sheet-subname-font-size,12px);line-height:var(--action-sheet-subname-line-height,20px);margin-top:var(--padding-xs,8px)}.van-action-sheet__header{font-size:var(--action-sheet-header-font-size,16px);font-weight:var(--font-weight-bold,500);line-height:var(--action-sheet-header-height,48px);text-align:center}.van-action-sheet__description{color:var(--action-sheet-description-color,#969799);font-size:var(--action-sheet-description-font-size,14px);line-height:var(--action-sheet-description-line-height,20px);padding:20px var(--padding-md,16px);text-align:center}.van-action-sheet__close{color:var(--action-sheet-close-icon-color,#c8c9cc);font-size:var(--action-sheet-close-icon-size,22px)!important;line-height:inherit!important;padding:var(--action-sheet-close-icon-padding,0 16px);position:absolute!important;right:0;top:0}.van-action-sheet__loading{display:flex!important} \ No newline at end of file diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/area/index.d.ts b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/area/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/area/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/area/index.js b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/area/index.js new file mode 100644 index 0000000..73de66d --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/area/index.js @@ -0,0 +1,235 @@ +"use strict"; +var __assign = (this && this.__assign) || function () { + __assign = Object.assign || function(t) { + for (var s, i = 1, n = arguments.length; i < n; i++) { + s = arguments[i]; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) + t[p] = s[p]; + } + return t; + }; + return __assign.apply(this, arguments); +}; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var shared_1 = require("../picker/shared"); +var utils_1 = require("../common/utils"); +var EMPTY_CODE = '000000'; +(0, component_1.VantComponent)({ + classes: ['active-class', 'toolbar-class', 'column-class'], + props: __assign(__assign({}, shared_1.pickerProps), { showToolbar: { + type: Boolean, + value: true, + }, value: { + type: String, + observer: function (value) { + this.code = value; + this.setValues(); + }, + }, areaList: { + type: Object, + value: {}, + observer: 'setValues', + }, columnsNum: { + type: null, + value: 3, + }, columnsPlaceholder: { + type: Array, + observer: function (val) { + this.setData({ + typeToColumnsPlaceholder: { + province: val[0] || '', + city: val[1] || '', + county: val[2] || '', + }, + }); + }, + } }), + data: { + columns: [{ values: [] }, { values: [] }, { values: [] }], + typeToColumnsPlaceholder: {}, + }, + mounted: function () { + var _this = this; + (0, utils_1.requestAnimationFrame)(function () { + _this.setValues(); + }); + }, + methods: { + getPicker: function () { + if (this.picker == null) { + this.picker = this.selectComponent('.van-area__picker'); + } + return this.picker; + }, + onCancel: function (event) { + this.emit('cancel', event.detail); + }, + onConfirm: function (event) { + var index = event.detail.index; + var value = event.detail.value; + value = this.parseValues(value); + this.emit('confirm', { value: value, index: index }); + }, + emit: function (type, detail) { + detail.values = detail.value; + delete detail.value; + this.$emit(type, detail); + }, + parseValues: function (values) { + var columnsPlaceholder = this.data.columnsPlaceholder; + return values.map(function (value, index) { + if (value && + (!value.code || value.name === columnsPlaceholder[index])) { + return __assign(__assign({}, value), { code: '', name: '' }); + } + return value; + }); + }, + onChange: function (event) { + var _this = this; + var _a; + var _b = event.detail, index = _b.index, picker = _b.picker, value = _b.value; + this.code = value[index].code; + (_a = this.setValues()) === null || _a === void 0 ? void 0 : _a.then(function () { + _this.$emit('change', { + picker: picker, + values: _this.parseValues(picker.getValues()), + index: index, + }); + }); + }, + getConfig: function (type) { + var areaList = this.data.areaList; + return (areaList && areaList["".concat(type, "_list")]) || {}; + }, + getList: function (type, code) { + if (type !== 'province' && !code) { + return []; + } + var typeToColumnsPlaceholder = this.data.typeToColumnsPlaceholder; + var list = this.getConfig(type); + var result = Object.keys(list).map(function (code) { return ({ + code: code, + name: list[code], + }); }); + if (code != null) { + // oversea code + if (code[0] === '9' && type === 'city') { + code = '9'; + } + result = result.filter(function (item) { return item.code.indexOf(code) === 0; }); + } + if (typeToColumnsPlaceholder[type] && result.length) { + // set columns placeholder + var codeFill = type === 'province' + ? '' + : type === 'city' + ? EMPTY_CODE.slice(2, 4) + : EMPTY_CODE.slice(4, 6); + result.unshift({ + code: "".concat(code).concat(codeFill), + name: typeToColumnsPlaceholder[type], + }); + } + return result; + }, + getIndex: function (type, code) { + var compareNum = type === 'province' ? 2 : type === 'city' ? 4 : 6; + var list = this.getList(type, code.slice(0, compareNum - 2)); + // oversea code + if (code[0] === '9' && type === 'province') { + compareNum = 1; + } + code = code.slice(0, compareNum); + for (var i = 0; i < list.length; i++) { + if (list[i].code.slice(0, compareNum) === code) { + return i; + } + } + return 0; + }, + setValues: function () { + var picker = this.getPicker(); + if (!picker) { + return; + } + var code = this.code || this.getDefaultCode(); + var provinceList = this.getList('province'); + var cityList = this.getList('city', code.slice(0, 2)); + var stack = []; + var indexes = []; + var columnsNum = this.data.columnsNum; + if (columnsNum >= 1) { + stack.push(picker.setColumnValues(0, provinceList, false)); + indexes.push(this.getIndex('province', code)); + } + if (columnsNum >= 2) { + stack.push(picker.setColumnValues(1, cityList, false)); + indexes.push(this.getIndex('city', code)); + if (cityList.length && code.slice(2, 4) === '00') { + code = cityList[0].code; + } + } + if (columnsNum === 3) { + stack.push(picker.setColumnValues(2, this.getList('county', code.slice(0, 4)), false)); + indexes.push(this.getIndex('county', code)); + } + return Promise.all(stack) + .catch(function () { }) + .then(function () { return picker.setIndexes(indexes); }) + .catch(function () { }); + }, + getDefaultCode: function () { + var columnsPlaceholder = this.data.columnsPlaceholder; + if (columnsPlaceholder.length) { + return EMPTY_CODE; + } + var countyCodes = Object.keys(this.getConfig('county')); + if (countyCodes[0]) { + return countyCodes[0]; + } + var cityCodes = Object.keys(this.getConfig('city')); + if (cityCodes[0]) { + return cityCodes[0]; + } + return ''; + }, + getValues: function () { + var picker = this.getPicker(); + if (!picker) { + return []; + } + return this.parseValues(picker.getValues().filter(function (value) { return !!value; })); + }, + getDetail: function () { + var values = this.getValues(); + var area = { + code: '', + country: '', + province: '', + city: '', + county: '', + }; + if (!values.length) { + return area; + } + var names = values.map(function (item) { return item.name; }); + area.code = values[values.length - 1].code; + if (area.code[0] === '9') { + area.country = names[1] || ''; + area.province = names[2] || ''; + } + else { + area.province = names[0] || ''; + area.city = names[1] || ''; + area.county = names[2] || ''; + } + return area; + }, + reset: function (code) { + this.code = code || ''; + return this.setValues(); + }, + }, +}); diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/area/index.json b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/area/index.json new file mode 100644 index 0000000..a778e91 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/area/index.json @@ -0,0 +1,6 @@ +{ + "component": true, + "usingComponents": { + "van-picker": "../picker/index" + } +} diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/area/index.wxml b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/area/index.wxml new file mode 100644 index 0000000..3a437b7 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/area/index.wxml @@ -0,0 +1,20 @@ + + + diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/area/index.wxs b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/area/index.wxs new file mode 100644 index 0000000..07723c1 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/area/index.wxs @@ -0,0 +1,8 @@ +/* eslint-disable */ +function displayColumns(columns, columnsNum) { + return columns.slice(0, +columnsNum); +} + +module.exports = { + displayColumns: displayColumns, +}; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/area/index.wxss b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/area/index.wxss new file mode 100644 index 0000000..99694d6 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/area/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss'; \ No newline at end of file diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/button/index.d.ts b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/button/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/button/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/button/index.js b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/button/index.js new file mode 100644 index 0000000..984135c --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/button/index.js @@ -0,0 +1,67 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var button_1 = require("../mixins/button"); +var version_1 = require("../common/version"); +var mixins = [button_1.button]; +if ((0, version_1.canIUseFormFieldButton)()) { + mixins.push('wx://form-field-button'); +} +(0, component_1.VantComponent)({ + mixins: mixins, + classes: ['hover-class', 'loading-class'], + data: { + baseStyle: '', + }, + props: { + formType: String, + icon: String, + classPrefix: { + type: String, + value: 'van-icon', + }, + plain: Boolean, + block: Boolean, + round: Boolean, + square: Boolean, + loading: Boolean, + hairline: Boolean, + disabled: Boolean, + loadingText: String, + customStyle: String, + loadingType: { + type: String, + value: 'circular', + }, + type: { + type: String, + value: 'default', + }, + dataset: null, + size: { + type: String, + value: 'normal', + }, + loadingSize: { + type: String, + value: '20px', + }, + color: String, + }, + methods: { + onClick: function (event) { + var _this = this; + this.$emit('click', event); + var _a = this.data, canIUseGetUserProfile = _a.canIUseGetUserProfile, openType = _a.openType, getUserProfileDesc = _a.getUserProfileDesc, lang = _a.lang; + if (openType === 'getUserInfo' && canIUseGetUserProfile) { + wx.getUserProfile({ + desc: getUserProfileDesc || ' ', + lang: lang || 'en', + complete: function (userProfile) { + _this.$emit('getuserinfo', userProfile); + }, + }); + } + }, + }, +}); diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/button/index.json b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/button/index.json new file mode 100644 index 0000000..e00a588 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/button/index.json @@ -0,0 +1,7 @@ +{ + "component": true, + "usingComponents": { + "van-icon": "../icon/index", + "van-loading": "../loading/index" + } +} diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/button/index.wxml b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/button/index.wxml new file mode 100644 index 0000000..8034845 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/button/index.wxml @@ -0,0 +1,53 @@ + + + + diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/button/index.wxs b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/button/index.wxs new file mode 100644 index 0000000..8b649fe --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/button/index.wxs @@ -0,0 +1,39 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); + +function rootStyle(data) { + if (!data.color) { + return data.customStyle; + } + + var properties = { + color: data.plain ? data.color : '#fff', + background: data.plain ? null : data.color, + }; + + // hide border when color is linear-gradient + if (data.color.indexOf('gradient') !== -1) { + properties.border = 0; + } else { + properties['border-color'] = data.color; + } + + return style([properties, data.customStyle]); +} + +function loadingColor(data) { + if (data.plain) { + return data.color ? data.color : '#c9c9c9'; + } + + if (data.type === 'default') { + return '#c9c9c9'; + } + + return '#fff'; +} + +module.exports = { + rootStyle: rootStyle, + loadingColor: loadingColor, +}; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/button/index.wxss b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/button/index.wxss new file mode 100644 index 0000000..bd8bb5a --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/button/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-button{-webkit-text-size-adjust:100%;align-items:center;-webkit-appearance:none;border-radius:var(--button-border-radius,2px);box-sizing:border-box;display:inline-flex;font-size:var(--button-default-font-size,16px);height:var(--button-default-height,44px);justify-content:center;line-height:var(--button-line-height,20px);padding:0;position:relative;text-align:center;transition:opacity .2s;vertical-align:middle}.van-button:before{background-color:#000;border:inherit;border-color:#000;border-radius:inherit;content:" ";height:100%;left:50%;opacity:0;position:absolute;top:50%;transform:translate(-50%,-50%);width:100%}.van-button:after{border-width:0}.van-button--active:before{opacity:.15}.van-button--unclickable:after{display:none}.van-button--default{background:var(--button-default-background-color,#fff);border:var(--button-border-width,1px) solid var(--button-default-border-color,#ebedf0);color:var(--button-default-color,#323233)}.van-button--primary{background:var(--button-primary-background-color,#07c160);border:var(--button-border-width,1px) solid var(--button-primary-border-color,#07c160);color:var(--button-primary-color,#fff)}.van-button--info{background:var(--button-info-background-color,#1989fa);border:var(--button-border-width,1px) solid var(--button-info-border-color,#1989fa);color:var(--button-info-color,#fff)}.van-button--danger{background:var(--button-danger-background-color,#ee0a24);border:var(--button-border-width,1px) solid var(--button-danger-border-color,#ee0a24);color:var(--button-danger-color,#fff)}.van-button--warning{background:var(--button-warning-background-color,#ff976a);border:var(--button-border-width,1px) solid var(--button-warning-border-color,#ff976a);color:var(--button-warning-color,#fff)}.van-button--plain{background:var(--button-plain-background-color,#fff)}.van-button--plain.van-button--primary{color:var(--button-primary-background-color,#07c160)}.van-button--plain.van-button--info{color:var(--button-info-background-color,#1989fa)}.van-button--plain.van-button--danger{color:var(--button-danger-background-color,#ee0a24)}.van-button--plain.van-button--warning{color:var(--button-warning-background-color,#ff976a)}.van-button--large{height:var(--button-large-height,50px);width:100%}.van-button--normal{font-size:var(--button-normal-font-size,14px);padding:0 15px}.van-button--small{font-size:var(--button-small-font-size,12px);height:var(--button-small-height,30px);min-width:var(--button-small-min-width,60px);padding:0 var(--padding-xs,8px)}.van-button--mini{display:inline-block;font-size:var(--button-mini-font-size,10px);height:var(--button-mini-height,22px);min-width:var(--button-mini-min-width,50px)}.van-button--mini+.van-button--mini{margin-left:5px}.van-button--block{display:flex;width:100%}.van-button--round{border-radius:var(--button-round-border-radius,999px)}.van-button--square{border-radius:0}.van-button--disabled{opacity:var(--button-disabled-opacity,.5)}.van-button__text{display:inline}.van-button__icon+.van-button__text:not(:empty),.van-button__loading-text{margin-left:4px}.van-button__icon{line-height:inherit!important;min-width:1em;vertical-align:top}.van-button--hairline{border-width:0;padding-top:1px}.van-button--hairline:after{border-color:inherit;border-radius:calc(var(--button-border-radius, 2px)*2);border-width:1px}.van-button--hairline.van-button--round:after{border-radius:var(--button-round-border-radius,999px)}.van-button--hairline.van-button--square:after{border-radius:0} \ No newline at end of file diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/calendar.wxml b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/calendar.wxml new file mode 100644 index 0000000..808f739 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/calendar.wxml @@ -0,0 +1,68 @@ + +
+ +
+ + + + + + + + + + + + {{ + computed.getButtonDisabled(type, currentDate) + ? confirmDisabledText + : confirmText + }} + + +
diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/components/header/index.d.ts b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/components/header/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/components/header/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/components/header/index.js b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/components/header/index.js new file mode 100644 index 0000000..544b3a4 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/components/header/index.js @@ -0,0 +1,45 @@ +"use strict"; +var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) { + if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) { + if (ar || !(i in from)) { + if (!ar) ar = Array.prototype.slice.call(from, 0, i); + ar[i] = from[i]; + } + } + return to.concat(ar || Array.prototype.slice.call(from)); +}; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../../../common/component"); +(0, component_1.VantComponent)({ + props: { + title: { + type: String, + value: '日期选择', + }, + subtitle: String, + showTitle: Boolean, + showSubtitle: Boolean, + firstDayOfWeek: { + type: Number, + observer: 'initWeekDay', + }, + }, + data: { + weekdays: [], + }, + created: function () { + this.initWeekDay(); + }, + methods: { + initWeekDay: function () { + var defaultWeeks = ['日', '一', '二', '三', '四', '五', '六']; + var firstDayOfWeek = this.data.firstDayOfWeek || 0; + this.setData({ + weekdays: __spreadArray(__spreadArray([], defaultWeeks.slice(firstDayOfWeek, 7), true), defaultWeeks.slice(0, firstDayOfWeek), true), + }); + }, + onClickSubtitle: function (event) { + this.$emit('click-subtitle', event); + }, + }, +}); diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/components/header/index.json b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/components/header/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/components/header/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/components/header/index.wxml b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/components/header/index.wxml new file mode 100644 index 0000000..7e56c83 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/components/header/index.wxml @@ -0,0 +1,16 @@ + + + + {{ title }} + + + + {{ subtitle }} + + + + + {{ item }} + + + diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/components/header/index.wxss b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/components/header/index.wxss new file mode 100644 index 0000000..272537e --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/components/header/index.wxss @@ -0,0 +1 @@ +@import '../../../common/index.wxss';.van-calendar__header{box-shadow:var(--calendar-header-box-shadow,0 2px 10px hsla(220,1%,50%,.16));flex-shrink:0}.van-calendar__header-subtitle,.van-calendar__header-title{font-weight:var(--font-weight-bold,500);height:var(--calendar-header-title-height,44px);line-height:var(--calendar-header-title-height,44px);text-align:center}.van-calendar__header-title+.van-calendar__header-title,.van-calendar__header-title:empty{display:none}.van-calendar__header-title:empty+.van-calendar__header-title{display:block!important}.van-calendar__weekdays{display:flex}.van-calendar__weekday{flex:1;font-size:var(--calendar-weekdays-font-size,12px);line-height:var(--calendar-weekdays-height,30px);text-align:center} \ No newline at end of file diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/components/month/index.d.ts b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/components/month/index.d.ts new file mode 100644 index 0000000..3ccf85a --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/components/month/index.d.ts @@ -0,0 +1,6 @@ +export interface Day { + date: Date; + type: string; + text: number; + bottomInfo?: string; +} diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/components/month/index.js b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/components/month/index.js new file mode 100644 index 0000000..4d137f5 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/components/month/index.js @@ -0,0 +1,158 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../../../common/component"); +var utils_1 = require("../../utils"); +(0, component_1.VantComponent)({ + props: { + date: { + type: null, + observer: 'setDays', + }, + type: { + type: String, + observer: 'setDays', + }, + color: String, + minDate: { + type: null, + observer: 'setDays', + }, + maxDate: { + type: null, + observer: 'setDays', + }, + showMark: Boolean, + rowHeight: null, + formatter: { + type: null, + observer: 'setDays', + }, + currentDate: { + type: null, + observer: 'setDays', + }, + firstDayOfWeek: { + type: Number, + observer: 'setDays', + }, + allowSameDay: Boolean, + showSubtitle: Boolean, + showMonthTitle: Boolean, + }, + data: { + visible: true, + days: [], + }, + methods: { + onClick: function (event) { + var index = event.currentTarget.dataset.index; + var item = this.data.days[index]; + if (item.type !== 'disabled') { + this.$emit('click', item); + } + }, + setDays: function () { + var days = []; + var startDate = new Date(this.data.date); + var year = startDate.getFullYear(); + var month = startDate.getMonth(); + var totalDay = (0, utils_1.getMonthEndDay)(startDate.getFullYear(), startDate.getMonth() + 1); + for (var day = 1; day <= totalDay; day++) { + var date = new Date(year, month, day); + var type = this.getDayType(date); + var config = { + date: date, + type: type, + text: day, + bottomInfo: this.getBottomInfo(type), + }; + if (this.data.formatter) { + config = this.data.formatter(config); + } + days.push(config); + } + this.setData({ days: days }); + }, + getMultipleDayType: function (day) { + var currentDate = this.data.currentDate; + if (!Array.isArray(currentDate)) { + return ''; + } + var isSelected = function (date) { + return currentDate.some(function (item) { return (0, utils_1.compareDay)(item, date) === 0; }); + }; + if (isSelected(day)) { + var prevDay = (0, utils_1.getPrevDay)(day); + var nextDay = (0, utils_1.getNextDay)(day); + var prevSelected = isSelected(prevDay); + var nextSelected = isSelected(nextDay); + if (prevSelected && nextSelected) { + return 'multiple-middle'; + } + if (prevSelected) { + return 'end'; + } + return nextSelected ? 'start' : 'multiple-selected'; + } + return ''; + }, + getRangeDayType: function (day) { + var _a = this.data, currentDate = _a.currentDate, allowSameDay = _a.allowSameDay; + if (!Array.isArray(currentDate)) { + return ''; + } + var startDay = currentDate[0], endDay = currentDate[1]; + if (!startDay) { + return ''; + } + var compareToStart = (0, utils_1.compareDay)(day, startDay); + if (!endDay) { + return compareToStart === 0 ? 'start' : ''; + } + var compareToEnd = (0, utils_1.compareDay)(day, endDay); + if (compareToStart === 0 && compareToEnd === 0 && allowSameDay) { + return 'start-end'; + } + if (compareToStart === 0) { + return 'start'; + } + if (compareToEnd === 0) { + return 'end'; + } + if (compareToStart > 0 && compareToEnd < 0) { + return 'middle'; + } + return ''; + }, + getDayType: function (day) { + var _a = this.data, type = _a.type, minDate = _a.minDate, maxDate = _a.maxDate, currentDate = _a.currentDate; + if ((0, utils_1.compareDay)(day, minDate) < 0 || (0, utils_1.compareDay)(day, maxDate) > 0) { + return 'disabled'; + } + if (type === 'single') { + return (0, utils_1.compareDay)(day, currentDate) === 0 ? 'selected' : ''; + } + if (type === 'multiple') { + return this.getMultipleDayType(day); + } + /* istanbul ignore else */ + if (type === 'range') { + return this.getRangeDayType(day); + } + return ''; + }, + getBottomInfo: function (type) { + if (this.data.type === 'range') { + if (type === 'start') { + return '开始'; + } + if (type === 'end') { + return '结束'; + } + if (type === 'start-end') { + return '开始/结束'; + } + } + }, + }, +}); diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/components/month/index.json b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/components/month/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/components/month/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/components/month/index.wxml b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/components/month/index.wxml new file mode 100644 index 0000000..0c73b2f --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/components/month/index.wxml @@ -0,0 +1,39 @@ + + + + + + {{ computed.formatMonthTitle(date) }} + + + + + {{ computed.getMark(date) }} + + + + + {{ item.topInfo }} + {{ item.text }} + + {{ item.bottomInfo }} + + + + + {{ item.topInfo }} + {{ item.text }} + + {{ item.bottomInfo }} + + + + + diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/components/month/index.wxs b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/components/month/index.wxs new file mode 100644 index 0000000..55e45a5 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/components/month/index.wxs @@ -0,0 +1,71 @@ +/* eslint-disable */ +var utils = require('../../utils.wxs'); + +function getMark(date) { + return getDate(date).getMonth() + 1; +} + +var ROW_HEIGHT = 64; + +function getDayStyle(type, index, date, rowHeight, color, firstDayOfWeek) { + var style = []; + var current = getDate(date).getDay() || 7; + var offset = current < firstDayOfWeek ? (7 - firstDayOfWeek + current) : + current === 7 && firstDayOfWeek === 0 ? 0 : + (current - firstDayOfWeek); + + if (index === 0) { + style.push(['margin-left', (100 * offset) / 7 + '%']); + } + + if (rowHeight !== ROW_HEIGHT) { + style.push(['height', rowHeight + 'px']); + } + + if (color) { + if ( + type === 'start' || + type === 'end' || + type === 'start-end' || + type === 'multiple-selected' || + type === 'multiple-middle' + ) { + style.push(['background', color]); + } else if (type === 'middle') { + style.push(['color', color]); + } + } + + return style + .map(function(item) { + return item.join(':'); + }) + .join(';'); +} + +function formatMonthTitle(date) { + date = getDate(date); + return date.getFullYear() + '年' + (date.getMonth() + 1) + '月'; +} + +function getMonthStyle(visible, date, rowHeight) { + if (!visible) { + date = getDate(date); + + var totalDay = utils.getMonthEndDay( + date.getFullYear(), + date.getMonth() + 1 + ); + var offset = getDate(date).getDay(); + var padding = Math.ceil((totalDay + offset) / 7) * rowHeight; + + return 'padding-bottom:' + padding + 'px'; + } +} + +module.exports = { + getMark: getMark, + getDayStyle: getDayStyle, + formatMonthTitle: formatMonthTitle, + getMonthStyle: getMonthStyle +}; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/components/month/index.wxss b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/components/month/index.wxss new file mode 100644 index 0000000..9aee73d --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/components/month/index.wxss @@ -0,0 +1 @@ +@import '../../../common/index.wxss';.van-calendar{background-color:var(--calendar-background-color,#fff);display:flex;flex-direction:column;height:100%}.van-calendar__month-title{font-size:var(--calendar-month-title-font-size,14px);font-weight:var(--font-weight-bold,500);height:var(--calendar-header-title-height,44px);line-height:var(--calendar-header-title-height,44px);text-align:center}.van-calendar__days{display:flex;flex-wrap:wrap;position:relative;-webkit-user-select:none;user-select:none}.van-calendar__month-mark{color:var(--calendar-month-mark-color,rgba(242,243,245,.8));font-size:var(--calendar-month-mark-font-size,160px);left:50%;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);z-index:0}.van-calendar__day,.van-calendar__selected-day{align-items:center;display:flex;justify-content:center;text-align:center}.van-calendar__day{font-size:var(--calendar-day-font-size,16px);height:var(--calendar-day-height,64px);position:relative;width:14.285%}.van-calendar__day--end,.van-calendar__day--multiple-middle,.van-calendar__day--multiple-selected,.van-calendar__day--start,.van-calendar__day--start-end{background-color:var(--calendar-range-edge-background-color,#ee0a24);color:var(--calendar-range-edge-color,#fff)}.van-calendar__day--start{border-radius:4px 0 0 4px}.van-calendar__day--end{border-radius:0 4px 4px 0}.van-calendar__day--multiple-selected,.van-calendar__day--start-end{border-radius:4px}.van-calendar__day--middle{color:var(--calendar-range-middle-color,#ee0a24)}.van-calendar__day--middle:after{background-color:currentColor;bottom:0;content:"";left:0;opacity:var(--calendar-range-middle-background-opacity,.1);position:absolute;right:0;top:0}.van-calendar__day--disabled{color:var(--calendar-day-disabled-color,#c8c9cc);cursor:default}.van-calendar__bottom-info,.van-calendar__top-info{font-size:var(--calendar-info-font-size,10px);left:0;line-height:var(--calendar-info-line-height,14px);position:absolute;right:0}@media (max-width:350px){.van-calendar__bottom-info,.van-calendar__top-info{font-size:9px}}.van-calendar__top-info{top:6px}.van-calendar__bottom-info{bottom:6px}.van-calendar__selected-day{background-color:var(--calendar-selected-day-background-color,#ee0a24);border-radius:4px;color:var(--calendar-selected-day-color,#fff);height:var(--calendar-selected-day-size,54px);width:var(--calendar-selected-day-size,54px)} \ No newline at end of file diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/index.d.ts b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/index.js b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/index.js new file mode 100644 index 0000000..31989f0 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/index.js @@ -0,0 +1,360 @@ +"use strict"; +var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) { + if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) { + if (ar || !(i in from)) { + if (!ar) ar = Array.prototype.slice.call(from, 0, i); + ar[i] = from[i]; + } + } + return to.concat(ar || Array.prototype.slice.call(from)); +}; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var utils_1 = require("./utils"); +var toast_1 = __importDefault(require("../toast/toast")); +var utils_2 = require("../common/utils"); +var initialMinDate = (0, utils_1.getToday)().getTime(); +var initialMaxDate = (function () { + var now = (0, utils_1.getToday)(); + return new Date(now.getFullYear(), now.getMonth() + 6, now.getDate()).getTime(); +})(); +var getTime = function (date) { + return date instanceof Date ? date.getTime() : date; +}; +(0, component_1.VantComponent)({ + props: { + title: { + type: String, + value: '日期选择', + }, + color: String, + show: { + type: Boolean, + observer: function (val) { + if (val) { + this.initRect(); + this.scrollIntoView(); + } + }, + }, + formatter: null, + confirmText: { + type: String, + value: '确定', + }, + confirmDisabledText: { + type: String, + value: '确定', + }, + rangePrompt: String, + showRangePrompt: { + type: Boolean, + value: true, + }, + defaultDate: { + type: null, + observer: function (val) { + this.setData({ currentDate: val }); + this.scrollIntoView(); + }, + }, + allowSameDay: Boolean, + type: { + type: String, + value: 'single', + observer: 'reset', + }, + minDate: { + type: Number, + value: initialMinDate, + }, + maxDate: { + type: Number, + value: initialMaxDate, + }, + position: { + type: String, + value: 'bottom', + }, + rowHeight: { + type: null, + value: utils_1.ROW_HEIGHT, + }, + round: { + type: Boolean, + value: true, + }, + poppable: { + type: Boolean, + value: true, + }, + showMark: { + type: Boolean, + value: true, + }, + showTitle: { + type: Boolean, + value: true, + }, + showConfirm: { + type: Boolean, + value: true, + }, + showSubtitle: { + type: Boolean, + value: true, + }, + safeAreaInsetBottom: { + type: Boolean, + value: true, + }, + closeOnClickOverlay: { + type: Boolean, + value: true, + }, + maxRange: { + type: null, + value: null, + }, + firstDayOfWeek: { + type: Number, + value: 0, + }, + readonly: Boolean, + }, + data: { + subtitle: '', + currentDate: null, + scrollIntoView: '', + }, + created: function () { + this.setData({ + currentDate: this.getInitialDate(this.data.defaultDate), + }); + }, + mounted: function () { + if (this.data.show || !this.data.poppable) { + this.initRect(); + this.scrollIntoView(); + } + }, + methods: { + reset: function () { + this.setData({ currentDate: this.getInitialDate() }); + this.scrollIntoView(); + }, + initRect: function () { + var _this = this; + if (this.contentObserver != null) { + this.contentObserver.disconnect(); + } + var contentObserver = this.createIntersectionObserver({ + thresholds: [0, 0.1, 0.9, 1], + observeAll: true, + }); + this.contentObserver = contentObserver; + contentObserver.relativeTo('.van-calendar__body'); + contentObserver.observe('.month', function (res) { + if (res.boundingClientRect.top <= res.relativeRect.top) { + // @ts-ignore + _this.setData({ subtitle: (0, utils_1.formatMonthTitle)(res.dataset.date) }); + } + }); + }, + limitDateRange: function (date, minDate, maxDate) { + if (minDate === void 0) { minDate = null; } + if (maxDate === void 0) { maxDate = null; } + minDate = minDate || this.data.minDate; + maxDate = maxDate || this.data.maxDate; + if ((0, utils_1.compareDay)(date, minDate) === -1) { + return minDate; + } + if ((0, utils_1.compareDay)(date, maxDate) === 1) { + return maxDate; + } + return date; + }, + getInitialDate: function (defaultDate) { + var _this = this; + if (defaultDate === void 0) { defaultDate = null; } + var _a = this.data, type = _a.type, minDate = _a.minDate, maxDate = _a.maxDate; + var now = (0, utils_1.getToday)().getTime(); + if (type === 'range') { + if (!Array.isArray(defaultDate)) { + defaultDate = []; + } + var _b = defaultDate || [], startDay = _b[0], endDay = _b[1]; + var start = this.limitDateRange(startDay || now, minDate, (0, utils_1.getPrevDay)(new Date(maxDate)).getTime()); + var end = this.limitDateRange(endDay || now, (0, utils_1.getNextDay)(new Date(minDate)).getTime()); + return [start, end]; + } + if (type === 'multiple') { + if (Array.isArray(defaultDate)) { + return defaultDate.map(function (date) { return _this.limitDateRange(date); }); + } + return [this.limitDateRange(now)]; + } + if (!defaultDate || Array.isArray(defaultDate)) { + defaultDate = now; + } + return this.limitDateRange(defaultDate); + }, + scrollIntoView: function () { + var _this = this; + (0, utils_2.requestAnimationFrame)(function () { + var _a = _this.data, currentDate = _a.currentDate, type = _a.type, show = _a.show, poppable = _a.poppable, minDate = _a.minDate, maxDate = _a.maxDate; + // @ts-ignore + var targetDate = type === 'single' ? currentDate : currentDate[0]; + var displayed = show || !poppable; + if (!targetDate || !displayed) { + return; + } + var months = (0, utils_1.getMonths)(minDate, maxDate); + months.some(function (month, index) { + if ((0, utils_1.compareMonth)(month, targetDate) === 0) { + _this.setData({ scrollIntoView: "month".concat(index) }); + return true; + } + return false; + }); + }); + }, + onOpen: function () { + this.$emit('open'); + }, + onOpened: function () { + this.$emit('opened'); + }, + onClose: function () { + this.$emit('close'); + }, + onClosed: function () { + this.$emit('closed'); + }, + onClickDay: function (event) { + if (this.data.readonly) { + return; + } + var date = event.detail.date; + var _a = this.data, type = _a.type, currentDate = _a.currentDate, allowSameDay = _a.allowSameDay; + if (type === 'range') { + // @ts-ignore + var startDay_1 = currentDate[0], endDay = currentDate[1]; + if (startDay_1 && !endDay) { + var compareToStart = (0, utils_1.compareDay)(date, startDay_1); + if (compareToStart === 1) { + var days_1 = this.selectComponent('.month').data.days; + days_1.some(function (day, index) { + var isDisabled = day.type === 'disabled' && + getTime(startDay_1) < getTime(day.date) && + getTime(day.date) < getTime(date); + if (isDisabled) { + (date = days_1[index - 1].date); + } + return isDisabled; + }); + this.select([startDay_1, date], true); + } + else if (compareToStart === -1) { + this.select([date, null]); + } + else if (allowSameDay) { + this.select([date, date]); + } + } + else { + this.select([date, null]); + } + } + else if (type === 'multiple') { + var selectedIndex_1; + // @ts-ignore + var selected = currentDate.some(function (dateItem, index) { + var equal = (0, utils_1.compareDay)(dateItem, date) === 0; + if (equal) { + selectedIndex_1 = index; + } + return equal; + }); + if (selected) { + // @ts-ignore + var cancelDate = currentDate.splice(selectedIndex_1, 1); + this.setData({ currentDate: currentDate }); + this.unselect(cancelDate); + } + else { + // @ts-ignore + this.select(__spreadArray(__spreadArray([], currentDate, true), [date], false)); + } + } + else { + this.select(date, true); + } + }, + unselect: function (dateArray) { + var date = dateArray[0]; + if (date) { + this.$emit('unselect', (0, utils_1.copyDates)(date)); + } + }, + select: function (date, complete) { + if (complete && this.data.type === 'range') { + var valid = this.checkRange(date); + if (!valid) { + // auto selected to max range if showConfirm + if (this.data.showConfirm) { + this.emit([ + date[0], + (0, utils_1.getDayByOffset)(date[0], this.data.maxRange - 1), + ]); + } + else { + this.emit(date); + } + return; + } + } + this.emit(date); + if (complete && !this.data.showConfirm) { + this.onConfirm(); + } + }, + emit: function (date) { + this.setData({ + currentDate: Array.isArray(date) ? date.map(getTime) : getTime(date), + }); + this.$emit('select', (0, utils_1.copyDates)(date)); + }, + checkRange: function (date) { + var _a = this.data, maxRange = _a.maxRange, rangePrompt = _a.rangePrompt, showRangePrompt = _a.showRangePrompt; + if (maxRange && (0, utils_1.calcDateNum)(date) > maxRange) { + if (showRangePrompt) { + (0, toast_1.default)({ + context: this, + message: rangePrompt || "\u9009\u62E9\u5929\u6570\u4E0D\u80FD\u8D85\u8FC7 ".concat(maxRange, " \u5929"), + }); + } + this.$emit('over-range'); + return false; + } + return true; + }, + onConfirm: function () { + var _this = this; + if (this.data.type === 'range' && + !this.checkRange(this.data.currentDate)) { + return; + } + wx.nextTick(function () { + // @ts-ignore + _this.$emit('confirm', (0, utils_1.copyDates)(_this.data.currentDate)); + }); + }, + onClickSubtitle: function (event) { + this.$emit('click-subtitle', event); + }, + }, +}); diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/index.json b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/index.json new file mode 100644 index 0000000..397d5ae --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/index.json @@ -0,0 +1,10 @@ +{ + "component": true, + "usingComponents": { + "header": "./components/header/index", + "month": "./components/month/index", + "van-button": "../button/index", + "van-popup": "../popup/index", + "van-toast": "../toast/index" + } +} diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/index.wxml b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/index.wxml new file mode 100644 index 0000000..bc8bcfd --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/index.wxml @@ -0,0 +1,25 @@ + + + + + + + + + + + + diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/index.wxs b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/index.wxs new file mode 100644 index 0000000..2c04be1 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/index.wxs @@ -0,0 +1,37 @@ +/* eslint-disable */ +var utils = require('./utils.wxs'); + +function getMonths(minDate, maxDate) { + var months = []; + var cursor = getDate(minDate); + + cursor.setDate(1); + + do { + months.push(cursor.getTime()); + cursor.setMonth(cursor.getMonth() + 1); + } while (utils.compareMonth(cursor, getDate(maxDate)) !== 1); + + return months; +} + +function getButtonDisabled(type, currentDate) { + if (currentDate == null) { + return true; + } + + if (type === 'range') { + return !currentDate[0] || !currentDate[1]; + } + + if (type === 'multiple') { + return !currentDate.length; + } + + return !currentDate; +} + +module.exports = { + getMonths: getMonths, + getButtonDisabled: getButtonDisabled +}; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/index.wxss b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/index.wxss new file mode 100644 index 0000000..05df518 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-calendar{background-color:var(--calendar-background-color,#fff);display:flex;flex-direction:column;height:var(--calendar-height,100%)}.van-calendar__close-icon{top:11px}.van-calendar__popup--bottom,.van-calendar__popup--top{height:var(--calendar-popup-height,80%)}.van-calendar__popup--left,.van-calendar__popup--right{height:100%}.van-calendar__body{-webkit-overflow-scrolling:touch;flex:1;overflow:auto}.van-calendar__footer{flex-shrink:0;padding:0 var(--padding-md,16px)}.van-calendar__footer--safe-area-inset-bottom{padding-bottom:env(safe-area-inset-bottom)}.van-calendar__footer+.van-calendar__footer,.van-calendar__footer:empty{display:none}.van-calendar__footer:empty+.van-calendar__footer{display:block!important}.van-calendar__confirm{height:var(--calendar-confirm-button-height,36px)!important;line-height:var(--calendar-confirm-button-line-height,34px)!important;margin:var(--calendar-confirm-button-margin,7px 0)!important} \ No newline at end of file diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/utils.d.ts b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/utils.d.ts new file mode 100644 index 0000000..eb710c0 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/utils.d.ts @@ -0,0 +1,12 @@ +export declare const ROW_HEIGHT = 64; +export declare function formatMonthTitle(date: Date): string; +export declare function compareMonth(date1: Date | number, date2: Date | number): 1 | -1 | 0; +export declare function compareDay(day1: Date | number, day2: Date | number): 1 | -1 | 0; +export declare function getDayByOffset(date: Date, offset: number): Date; +export declare function getPrevDay(date: Date): Date; +export declare function getNextDay(date: Date): Date; +export declare function getToday(): Date; +export declare function calcDateNum(date: [Date, Date]): number; +export declare function copyDates(dates: Date | Date[]): Date | Date[]; +export declare function getMonthEndDay(year: number, month: number): number; +export declare function getMonths(minDate: number, maxDate: number): number[]; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/utils.js b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/utils.js new file mode 100644 index 0000000..c9e5df7 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/utils.js @@ -0,0 +1,97 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.getMonths = exports.getMonthEndDay = exports.copyDates = exports.calcDateNum = exports.getToday = exports.getNextDay = exports.getPrevDay = exports.getDayByOffset = exports.compareDay = exports.compareMonth = exports.formatMonthTitle = exports.ROW_HEIGHT = void 0; +exports.ROW_HEIGHT = 64; +function formatMonthTitle(date) { + if (!(date instanceof Date)) { + date = new Date(date); + } + return "".concat(date.getFullYear(), "\u5E74").concat(date.getMonth() + 1, "\u6708"); +} +exports.formatMonthTitle = formatMonthTitle; +function compareMonth(date1, date2) { + if (!(date1 instanceof Date)) { + date1 = new Date(date1); + } + if (!(date2 instanceof Date)) { + date2 = new Date(date2); + } + var year1 = date1.getFullYear(); + var year2 = date2.getFullYear(); + var month1 = date1.getMonth(); + var month2 = date2.getMonth(); + if (year1 === year2) { + return month1 === month2 ? 0 : month1 > month2 ? 1 : -1; + } + return year1 > year2 ? 1 : -1; +} +exports.compareMonth = compareMonth; +function compareDay(day1, day2) { + if (!(day1 instanceof Date)) { + day1 = new Date(day1); + } + if (!(day2 instanceof Date)) { + day2 = new Date(day2); + } + var compareMonthResult = compareMonth(day1, day2); + if (compareMonthResult === 0) { + var date1 = day1.getDate(); + var date2 = day2.getDate(); + return date1 === date2 ? 0 : date1 > date2 ? 1 : -1; + } + return compareMonthResult; +} +exports.compareDay = compareDay; +function getDayByOffset(date, offset) { + date = new Date(date); + date.setDate(date.getDate() + offset); + return date; +} +exports.getDayByOffset = getDayByOffset; +function getPrevDay(date) { + return getDayByOffset(date, -1); +} +exports.getPrevDay = getPrevDay; +function getNextDay(date) { + return getDayByOffset(date, 1); +} +exports.getNextDay = getNextDay; +function getToday() { + var today = new Date(); + today.setHours(0, 0, 0, 0); + return today; +} +exports.getToday = getToday; +function calcDateNum(date) { + var day1 = new Date(date[0]).getTime(); + var day2 = new Date(date[1]).getTime(); + return (day2 - day1) / (1000 * 60 * 60 * 24) + 1; +} +exports.calcDateNum = calcDateNum; +function copyDates(dates) { + if (Array.isArray(dates)) { + return dates.map(function (date) { + if (date === null) { + return date; + } + return new Date(date); + }); + } + return new Date(dates); +} +exports.copyDates = copyDates; +function getMonthEndDay(year, month) { + return 32 - new Date(year, month - 1, 32).getDate(); +} +exports.getMonthEndDay = getMonthEndDay; +function getMonths(minDate, maxDate) { + var months = []; + var cursor = new Date(minDate); + cursor.setDate(1); + do { + months.push(cursor.getTime()); + cursor.setMonth(cursor.getMonth() + 1); + } while (compareMonth(cursor, maxDate) !== 1); + return months; +} +exports.getMonths = getMonths; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/utils.wxs b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/utils.wxs new file mode 100644 index 0000000..e57f6b3 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/calendar/utils.wxs @@ -0,0 +1,25 @@ +/* eslint-disable */ +function getMonthEndDay(year, month) { + return 32 - getDate(year, month - 1, 32).getDate(); +} + +function compareMonth(date1, date2) { + date1 = getDate(date1); + date2 = getDate(date2); + + var year1 = date1.getFullYear(); + var year2 = date2.getFullYear(); + var month1 = date1.getMonth(); + var month2 = date2.getMonth(); + + if (year1 === year2) { + return month1 === month2 ? 0 : month1 > month2 ? 1 : -1; + } + + return year1 > year2 ? 1 : -1; +} + +module.exports = { + getMonthEndDay: getMonthEndDay, + compareMonth: compareMonth +}; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/card/index.d.ts b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/card/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/card/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/card/index.js b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/card/index.js new file mode 100644 index 0000000..2815655 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/card/index.js @@ -0,0 +1,51 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var link_1 = require("../mixins/link"); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + classes: [ + 'num-class', + 'desc-class', + 'thumb-class', + 'title-class', + 'price-class', + 'origin-price-class', + ], + mixins: [link_1.link], + props: { + tag: String, + num: String, + desc: String, + thumb: String, + title: String, + price: { + type: String, + observer: 'updatePrice', + }, + centered: Boolean, + lazyLoad: Boolean, + thumbLink: String, + originPrice: String, + thumbMode: { + type: String, + value: 'aspectFit', + }, + currency: { + type: String, + value: '¥', + }, + }, + methods: { + updatePrice: function () { + var price = this.data.price; + var priceArr = price.toString().split('.'); + this.setData({ + integerStr: priceArr[0], + decimalStr: priceArr[1] ? ".".concat(priceArr[1]) : '', + }); + }, + onClickThumb: function () { + this.jumpLink('thumbLink'); + }, + }, +}); diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/card/index.json b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/card/index.json new file mode 100644 index 0000000..e917407 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/card/index.json @@ -0,0 +1,6 @@ +{ + "component": true, + "usingComponents": { + "van-tag": "../tag/index" + } +} diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/card/index.wxml b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/card/index.wxml new file mode 100644 index 0000000..62173e4 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/card/index.wxml @@ -0,0 +1,56 @@ + + + + + + + + + {{ tag }} + + + + + + + {{ title }} + + + {{ desc }} + + + + + + + + + {{ currency }} + {{ integerStr }} + {{ decimalStr }} + + + {{ currency }} {{ originPrice }} + + x {{ num }} + + + + + + + + + + diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/card/index.wxss b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/card/index.wxss new file mode 100644 index 0000000..0f4d7c5 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/card/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-card{background-color:var(--card-background-color,#fafafa);box-sizing:border-box;color:var(--card-text-color,#323233);font-size:var(--card-font-size,12px);padding:var(--card-padding,8px 16px);position:relative}.van-card__header{display:flex}.van-card__header--center{align-items:center;justify-content:center}.van-card__thumb{flex:none;height:var(--card-thumb-size,88px);margin-right:var(--padding-xs,8px);position:relative;width:var(--card-thumb-size,88px)}.van-card__thumb:empty{display:none}.van-card__img{border-radius:8px;height:100%;width:100%}.van-card__content{display:flex;flex:1;flex-direction:column;justify-content:space-between;min-height:var(--card-thumb-size,88px);min-width:0;position:relative}.van-card__content--center{justify-content:center}.van-card__desc,.van-card__title{word-wrap:break-word}.van-card__title{font-weight:700;line-height:var(--card-title-line-height,16px)}.van-card__desc{color:var(--card-desc-color,#646566);line-height:var(--card-desc-line-height,20px)}.van-card__bottom{line-height:20px}.van-card__price{color:var(--card-price-color,#ee0a24);display:inline-block;font-size:var(--card-price-font-size,12px);font-weight:700}.van-card__price-integer{font-size:var(--card-price-integer-font-size,16px)}.van-card__price-decimal,.van-card__price-integer{font-family:var(--card-price-font-family,Avenir-Heavy,PingFang SC,Helvetica Neue,Arial,sans-serif)}.van-card__origin-price{color:var(--card-origin-price-color,#646566);display:inline-block;font-size:var(--card-origin-price-font-size,10px);margin-left:5px;text-decoration:line-through}.van-card__num{float:right}.van-card__tag{left:0;position:absolute!important;top:2px}.van-card__footer{flex:none;text-align:right;width:100%} \ No newline at end of file diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/cell-group/index.d.ts b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/cell-group/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/cell-group/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/cell-group/index.js b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/cell-group/index.js new file mode 100644 index 0000000..34a93a6 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/cell-group/index.js @@ -0,0 +1,13 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + props: { + title: String, + border: { + type: Boolean, + value: true, + }, + inset: Boolean, + }, +}); diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/cell-group/index.json b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/cell-group/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/cell-group/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/cell-group/index.wxml b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/cell-group/index.wxml new file mode 100644 index 0000000..311e064 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/cell-group/index.wxml @@ -0,0 +1,11 @@ + + + + {{ title }} + + + + diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/cell-group/index.wxss b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/cell-group/index.wxss new file mode 100644 index 0000000..08b252f --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/cell-group/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-cell-group--inset{border-radius:var(--cell-group-inset-border-radius,8px);margin:var(--cell-group-inset-padding,0 16px);overflow:hidden}.van-cell-group__title{color:var(--cell-group-title-color,#969799);font-size:var(--cell-group-title-font-size,14px);line-height:var(--cell-group-title-line-height,16px);padding:var(--cell-group-title-padding,16px 16px 8px)}.van-cell-group__title--inset{padding:var(--cell-group-inset-title-padding,16px 16px 8px 32px)} \ No newline at end of file diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/cell/index.d.ts b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/cell/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/cell/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/cell/index.js b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/cell/index.js new file mode 100644 index 0000000..80f3039 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/cell/index.js @@ -0,0 +1,40 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var link_1 = require("../mixins/link"); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + classes: [ + 'title-class', + 'label-class', + 'value-class', + 'right-icon-class', + 'hover-class', + ], + mixins: [link_1.link], + props: { + title: null, + value: null, + icon: String, + size: String, + label: String, + center: Boolean, + isLink: Boolean, + required: Boolean, + clickable: Boolean, + titleWidth: String, + customStyle: String, + arrowDirection: String, + useLabelSlot: Boolean, + border: { + type: Boolean, + value: true, + }, + titleStyle: String, + }, + methods: { + onClick: function (event) { + this.$emit('click', event.detail); + this.jumpLink(); + }, + }, +}); diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/cell/index.json b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/cell/index.json new file mode 100644 index 0000000..0a336c0 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/cell/index.json @@ -0,0 +1,6 @@ +{ + "component": true, + "usingComponents": { + "van-icon": "../icon/index" + } +} diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/cell/index.wxml b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/cell/index.wxml new file mode 100644 index 0000000..8387c3c --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/cell/index.wxml @@ -0,0 +1,47 @@ + + + + + + + + + + {{ title }} + + + + + {{ label }} + + + + + {{ value }} + + + + + + + + diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/cell/index.wxs b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/cell/index.wxs new file mode 100644 index 0000000..e3500c4 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/cell/index.wxs @@ -0,0 +1,17 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); +var addUnit = require('../wxs/add-unit.wxs'); + +function titleStyle(data) { + return style([ + { + 'max-width': addUnit(data.titleWidth), + 'min-width': addUnit(data.titleWidth), + }, + data.titleStyle, + ]); +} + +module.exports = { + titleStyle: titleStyle, +}; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/cell/index.wxss b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/cell/index.wxss new file mode 100644 index 0000000..1802f8e --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/cell/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-cell{background-color:var(--cell-background-color,#fff);box-sizing:border-box;color:var(--cell-text-color,#323233);display:flex;font-size:var(--cell-font-size,14px);line-height:var(--cell-line-height,24px);padding:var(--cell-vertical-padding,10px) var(--cell-horizontal-padding,16px);position:relative;width:100%}.van-cell:after{border-bottom:1px solid #ebedf0;bottom:0;box-sizing:border-box;content:" ";left:16px;pointer-events:none;position:absolute;right:16px;transform:scaleY(.5);transform-origin:center}.van-cell--borderless:after{display:none}.van-cell-group{background-color:var(--cell-background-color,#fff)}.van-cell__label{color:var(--cell-label-color,#969799);font-size:var(--cell-label-font-size,12px);line-height:var(--cell-label-line-height,18px);margin-top:var(--cell-label-margin-top,3px)}.van-cell__value{color:var(--cell-value-color,#969799);overflow:hidden;text-align:right;vertical-align:middle}.van-cell__title,.van-cell__value{flex:1}.van-cell__title:empty,.van-cell__value:empty{display:none}.van-cell__left-icon-wrap,.van-cell__right-icon-wrap{align-items:center;display:flex;font-size:var(--cell-icon-size,16px);height:var(--cell-line-height,24px)}.van-cell__left-icon-wrap{margin-right:var(--padding-base,4px)}.van-cell__right-icon-wrap{color:var(--cell-right-icon-color,#969799);margin-left:var(--padding-base,4px)}.van-cell__left-icon{vertical-align:middle}.van-cell__left-icon,.van-cell__right-icon{line-height:var(--cell-line-height,24px)}.van-cell--clickable.van-cell--hover{background-color:var(--cell-active-color,#f2f3f5)}.van-cell--required{overflow:visible}.van-cell--required:before{color:var(--cell-required-color,#ee0a24);content:"*";font-size:var(--cell-font-size,14px);left:var(--padding-xs,8px);position:absolute}.van-cell--center{align-items:center}.van-cell--large{padding-bottom:var(--cell-large-vertical-padding,12px);padding-top:var(--cell-large-vertical-padding,12px)}.van-cell--large .van-cell__title{font-size:var(--cell-large-title-font-size,16px)}.van-cell--large .van-cell__value{font-size:var(--cell-large-value-font-size,16px)}.van-cell--large .van-cell__label{font-size:var(--cell-large-label-font-size,14px)} \ No newline at end of file diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/checkbox-group/index.d.ts b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/checkbox-group/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/checkbox-group/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/checkbox-group/index.js b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/checkbox-group/index.js new file mode 100644 index 0000000..80c93a1 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/checkbox-group/index.js @@ -0,0 +1,39 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var relation_1 = require("../common/relation"); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + field: true, + relation: (0, relation_1.useChildren)('checkbox', function (target) { + this.updateChild(target); + }), + props: { + max: Number, + value: { + type: Array, + observer: 'updateChildren', + }, + disabled: { + type: Boolean, + observer: 'updateChildren', + }, + direction: { + type: String, + value: 'vertical', + }, + }, + methods: { + updateChildren: function () { + var _this = this; + this.children.forEach(function (child) { return _this.updateChild(child); }); + }, + updateChild: function (child) { + var _a = this.data, value = _a.value, disabled = _a.disabled, direction = _a.direction; + child.setData({ + value: value.indexOf(child.data.name) !== -1, + parentDisabled: disabled, + direction: direction, + }); + }, + }, +}); diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/checkbox-group/index.json b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/checkbox-group/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/checkbox-group/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/checkbox-group/index.wxml b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/checkbox-group/index.wxml new file mode 100644 index 0000000..638bf9d --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/checkbox-group/index.wxml @@ -0,0 +1,5 @@ + + + + + diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/checkbox-group/index.wxss b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/checkbox-group/index.wxss new file mode 100644 index 0000000..c5666d7 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/checkbox-group/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-checkbox-group--horizontal{display:flex;flex-wrap:wrap} \ No newline at end of file diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/checkbox/index.d.ts b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/checkbox/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/checkbox/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/checkbox/index.js b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/checkbox/index.js new file mode 100644 index 0000000..6247365 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/checkbox/index.js @@ -0,0 +1,79 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var relation_1 = require("../common/relation"); +var component_1 = require("../common/component"); +function emit(target, value) { + target.$emit('input', value); + target.$emit('change', value); +} +(0, component_1.VantComponent)({ + field: true, + relation: (0, relation_1.useParent)('checkbox-group'), + classes: ['icon-class', 'label-class'], + props: { + value: Boolean, + disabled: Boolean, + useIconSlot: Boolean, + checkedColor: String, + labelPosition: { + type: String, + value: 'right', + }, + labelDisabled: Boolean, + shape: { + type: String, + value: 'round', + }, + iconSize: { + type: null, + value: 20, + }, + }, + data: { + parentDisabled: false, + direction: 'vertical', + }, + methods: { + emitChange: function (value) { + if (this.parent) { + this.setParentValue(this.parent, value); + } + else { + emit(this, value); + } + }, + toggle: function () { + var _a = this.data, parentDisabled = _a.parentDisabled, disabled = _a.disabled, value = _a.value; + if (!disabled && !parentDisabled) { + this.emitChange(!value); + } + }, + onClickLabel: function () { + var _a = this.data, labelDisabled = _a.labelDisabled, parentDisabled = _a.parentDisabled, disabled = _a.disabled, value = _a.value; + if (!disabled && !labelDisabled && !parentDisabled) { + this.emitChange(!value); + } + }, + setParentValue: function (parent, value) { + var parentValue = parent.data.value.slice(); + var name = this.data.name; + var max = parent.data.max; + if (value) { + if (max && parentValue.length >= max) { + return; + } + if (parentValue.indexOf(name) === -1) { + parentValue.push(name); + emit(parent, parentValue); + } + } + else { + var index = parentValue.indexOf(name); + if (index !== -1) { + parentValue.splice(index, 1); + emit(parent, parentValue); + } + } + }, + }, +}); diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/checkbox/index.json b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/checkbox/index.json new file mode 100644 index 0000000..0a336c0 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/checkbox/index.json @@ -0,0 +1,6 @@ +{ + "component": true, + "usingComponents": { + "van-icon": "../icon/index" + } +} diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/checkbox/index.wxml b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/checkbox/index.wxml new file mode 100644 index 0000000..39a7bb0 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/checkbox/index.wxml @@ -0,0 +1,31 @@ + + + + + + + + + + + + + + + diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/checkbox/index.wxs b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/checkbox/index.wxs new file mode 100644 index 0000000..eb9c772 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/checkbox/index.wxs @@ -0,0 +1,20 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); +var addUnit = require('../wxs/add-unit.wxs'); + +function iconStyle(checkedColor, value, disabled, parentDisabled, iconSize) { + var styles = { + 'font-size': addUnit(iconSize), + }; + + if (checkedColor && value && !disabled && !parentDisabled) { + styles['border-color'] = checkedColor; + styles['background-color'] = checkedColor; + } + + return style(styles); +} + +module.exports = { + iconStyle: iconStyle, +}; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/checkbox/index.wxss b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/checkbox/index.wxss new file mode 100644 index 0000000..da2272a --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/checkbox/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-checkbox{align-items:center;display:flex;overflow:hidden;-webkit-user-select:none;user-select:none}.van-checkbox--horizontal{margin-right:12px}.van-checkbox__icon-wrap,.van-checkbox__label{line-height:var(--checkbox-size,20px)}.van-checkbox__icon-wrap{flex:none}.van-checkbox__icon{align-items:center;border:1px solid var(--checkbox-border-color,#c8c9cc);box-sizing:border-box;color:transparent;display:flex;font-size:var(--checkbox-size,20px);height:1em;justify-content:center;text-align:center;transition-duration:var(--checkbox-transition-duration,.2s);transition-property:color,border-color,background-color;width:1em}.van-checkbox__icon--round{border-radius:100%}.van-checkbox__icon--checked{background-color:var(--checkbox-checked-icon-color,#1989fa);border-color:var(--checkbox-checked-icon-color,#1989fa);color:#fff}.van-checkbox__icon--disabled{background-color:var(--checkbox-disabled-background-color,#ebedf0);border-color:var(--checkbox-disabled-icon-color,#c8c9cc)}.van-checkbox__icon--disabled.van-checkbox__icon--checked{color:var(--checkbox-disabled-icon-color,#c8c9cc)}.van-checkbox__label{word-wrap:break-word;color:var(--checkbox-label-color,#323233);padding-left:var(--checkbox-label-margin,10px)}.van-checkbox__label--left{float:left;margin:0 var(--checkbox-label-margin,10px) 0 0}.van-checkbox__label--disabled{color:var(--checkbox-disabled-label-color,#c8c9cc)}.van-checkbox__label:empty{margin:0} \ No newline at end of file diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/circle/canvas.d.ts b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/circle/canvas.d.ts new file mode 100644 index 0000000..15268c9 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/circle/canvas.d.ts @@ -0,0 +1,4 @@ +/// +declare type CanvasContext = WechatMiniprogram.CanvasContext; +export declare function adaptor(ctx: CanvasContext & Record): CanvasContext; +export {}; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/circle/canvas.js b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/circle/canvas.js new file mode 100644 index 0000000..d81df74 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/circle/canvas.js @@ -0,0 +1,47 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.adaptor = void 0; +function adaptor(ctx) { + // @ts-ignore + return Object.assign(ctx, { + setStrokeStyle: function (val) { + ctx.strokeStyle = val; + }, + setLineWidth: function (val) { + ctx.lineWidth = val; + }, + setLineCap: function (val) { + ctx.lineCap = val; + }, + setFillStyle: function (val) { + ctx.fillStyle = val; + }, + setFontSize: function (val) { + ctx.font = String(val); + }, + setGlobalAlpha: function (val) { + ctx.globalAlpha = val; + }, + setLineJoin: function (val) { + ctx.lineJoin = val; + }, + setTextAlign: function (val) { + ctx.textAlign = val; + }, + setMiterLimit: function (val) { + ctx.miterLimit = val; + }, + setShadow: function (offsetX, offsetY, blur, color) { + ctx.shadowOffsetX = offsetX; + ctx.shadowOffsetY = offsetY; + ctx.shadowBlur = blur; + ctx.shadowColor = color; + }, + setTextBaseline: function (val) { + ctx.textBaseline = val; + }, + createCircularGradient: function () { }, + draw: function () { }, + }); +} +exports.adaptor = adaptor; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/circle/index.d.ts b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/circle/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/circle/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/circle/index.js b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/circle/index.js new file mode 100644 index 0000000..9037e1c --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/circle/index.js @@ -0,0 +1,203 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var color_1 = require("../common/color"); +var component_1 = require("../common/component"); +var utils_1 = require("../common/utils"); +var validator_1 = require("../common/validator"); +var version_1 = require("../common/version"); +var canvas_1 = require("./canvas"); +function format(rate) { + return Math.min(Math.max(rate, 0), 100); +} +var PERIMETER = 2 * Math.PI; +var BEGIN_ANGLE = -Math.PI / 2; +var STEP = 1; +(0, component_1.VantComponent)({ + props: { + text: String, + lineCap: { + type: String, + value: 'round', + }, + value: { + type: Number, + value: 0, + observer: 'reRender', + }, + speed: { + type: Number, + value: 50, + }, + size: { + type: Number, + value: 100, + observer: function () { + this.drawCircle(this.currentValue); + }, + }, + fill: String, + layerColor: { + type: String, + value: color_1.WHITE, + }, + color: { + type: null, + value: color_1.BLUE, + observer: function () { + var _this = this; + this.setHoverColor().then(function () { + _this.drawCircle(_this.currentValue); + }); + }, + }, + type: { + type: String, + value: '', + }, + strokeWidth: { + type: Number, + value: 4, + }, + clockwise: { + type: Boolean, + value: true, + }, + }, + data: { + hoverColor: color_1.BLUE, + }, + methods: { + getContext: function () { + var _this = this; + var _a = this.data, type = _a.type, size = _a.size; + if (type === '' || !(0, version_1.canIUseCanvas2d)()) { + var ctx = wx.createCanvasContext('van-circle', this); + return Promise.resolve(ctx); + } + var dpr = (0, utils_1.getSystemInfoSync)().pixelRatio; + return new Promise(function (resolve) { + wx.createSelectorQuery() + .in(_this) + .select('#van-circle') + .node() + .exec(function (res) { + var canvas = res[0].node; + var ctx = canvas.getContext(type); + if (!_this.inited) { + _this.inited = true; + canvas.width = size * dpr; + canvas.height = size * dpr; + ctx.scale(dpr, dpr); + } + resolve((0, canvas_1.adaptor)(ctx)); + }); + }); + }, + setHoverColor: function () { + var _this = this; + var _a = this.data, color = _a.color, size = _a.size; + if ((0, validator_1.isObj)(color)) { + return this.getContext().then(function (context) { + var LinearColor = context.createLinearGradient(size, 0, 0, 0); + Object.keys(color) + .sort(function (a, b) { return parseFloat(a) - parseFloat(b); }) + .map(function (key) { + return LinearColor.addColorStop(parseFloat(key) / 100, color[key]); + }); + _this.hoverColor = LinearColor; + }); + } + this.hoverColor = color; + return Promise.resolve(); + }, + presetCanvas: function (context, strokeStyle, beginAngle, endAngle, fill) { + var _a = this.data, strokeWidth = _a.strokeWidth, lineCap = _a.lineCap, clockwise = _a.clockwise, size = _a.size; + var position = size / 2; + var radius = position - strokeWidth / 2; + context.setStrokeStyle(strokeStyle); + context.setLineWidth(strokeWidth); + context.setLineCap(lineCap); + context.beginPath(); + context.arc(position, position, radius, beginAngle, endAngle, !clockwise); + context.stroke(); + if (fill) { + context.setFillStyle(fill); + context.fill(); + } + }, + renderLayerCircle: function (context) { + var _a = this.data, layerColor = _a.layerColor, fill = _a.fill; + this.presetCanvas(context, layerColor, 0, PERIMETER, fill); + }, + renderHoverCircle: function (context, formatValue) { + var clockwise = this.data.clockwise; + // 结束角度 + var progress = PERIMETER * (formatValue / 100); + var endAngle = clockwise + ? BEGIN_ANGLE + progress + : 3 * Math.PI - (BEGIN_ANGLE + progress); + this.presetCanvas(context, this.hoverColor, BEGIN_ANGLE, endAngle); + }, + drawCircle: function (currentValue) { + var _this = this; + var size = this.data.size; + this.getContext().then(function (context) { + context.clearRect(0, 0, size, size); + _this.renderLayerCircle(context); + var formatValue = format(currentValue); + if (formatValue !== 0) { + _this.renderHoverCircle(context, formatValue); + } + context.draw(); + }); + }, + reRender: function () { + var _this = this; + // tofector 动画暂时没有想到好的解决方案 + var _a = this.data, value = _a.value, speed = _a.speed; + if (speed <= 0 || speed > 1000) { + this.drawCircle(value); + return; + } + this.clearMockInterval(); + this.currentValue = this.currentValue || 0; + var run = function () { + _this.interval = setTimeout(function () { + if (_this.currentValue !== value) { + if (Math.abs(_this.currentValue - value) < STEP) { + _this.currentValue = value; + } + else if (_this.currentValue < value) { + _this.currentValue += STEP; + } + else { + _this.currentValue -= STEP; + } + _this.drawCircle(_this.currentValue); + run(); + } + else { + _this.clearMockInterval(); + } + }, 1000 / speed); + }; + run(); + }, + clearMockInterval: function () { + if (this.interval) { + clearTimeout(this.interval); + this.interval = null; + } + }, + }, + mounted: function () { + var _this = this; + this.currentValue = this.data.value; + this.setHoverColor().then(function () { + _this.drawCircle(_this.currentValue); + }); + }, + destroyed: function () { + this.clearMockInterval(); + }, +}); diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/circle/index.json b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/circle/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/circle/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/circle/index.wxml b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/circle/index.wxml new file mode 100644 index 0000000..52bc59f --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/circle/index.wxml @@ -0,0 +1,9 @@ + + + + + + + + {{ text }} + diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/circle/index.wxss b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/circle/index.wxss new file mode 100644 index 0000000..2200751 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/circle/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-circle{display:inline-block;position:relative;text-align:center}.van-circle__text{color:var(--circle-text-color,#323233);left:0;position:absolute;top:50%;transform:translateY(-50%);width:100%} \ No newline at end of file diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/col/index.d.ts b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/col/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/col/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/col/index.js b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/col/index.js new file mode 100644 index 0000000..63c56eb --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/col/index.js @@ -0,0 +1,11 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var relation_1 = require("../common/relation"); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + relation: (0, relation_1.useParent)('row'), + props: { + span: Number, + offset: Number, + }, +}); diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/col/index.json b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/col/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/col/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/col/index.wxml b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/col/index.wxml new file mode 100644 index 0000000..975348b --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/col/index.wxml @@ -0,0 +1,9 @@ + + + + + + diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/col/index.wxs b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/col/index.wxs new file mode 100644 index 0000000..507c1cb --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/col/index.wxs @@ -0,0 +1,18 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); +var addUnit = require('../wxs/add-unit.wxs'); + +function rootStyle(data) { + if (!data.gutter) { + return ''; + } + + return style({ + 'padding-right': addUnit(data.gutter / 2), + 'padding-left': addUnit(data.gutter / 2), + }); +} + +module.exports = { + rootStyle: rootStyle, +}; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/col/index.wxss b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/col/index.wxss new file mode 100644 index 0000000..2fa265e --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/col/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-col{box-sizing:border-box;float:left}.van-col--1{width:4.16666667%}.van-col--offset-1{margin-left:4.16666667%}.van-col--2{width:8.33333333%}.van-col--offset-2{margin-left:8.33333333%}.van-col--3{width:12.5%}.van-col--offset-3{margin-left:12.5%}.van-col--4{width:16.66666667%}.van-col--offset-4{margin-left:16.66666667%}.van-col--5{width:20.83333333%}.van-col--offset-5{margin-left:20.83333333%}.van-col--6{width:25%}.van-col--offset-6{margin-left:25%}.van-col--7{width:29.16666667%}.van-col--offset-7{margin-left:29.16666667%}.van-col--8{width:33.33333333%}.van-col--offset-8{margin-left:33.33333333%}.van-col--9{width:37.5%}.van-col--offset-9{margin-left:37.5%}.van-col--10{width:41.66666667%}.van-col--offset-10{margin-left:41.66666667%}.van-col--11{width:45.83333333%}.van-col--offset-11{margin-left:45.83333333%}.van-col--12{width:50%}.van-col--offset-12{margin-left:50%}.van-col--13{width:54.16666667%}.van-col--offset-13{margin-left:54.16666667%}.van-col--14{width:58.33333333%}.van-col--offset-14{margin-left:58.33333333%}.van-col--15{width:62.5%}.van-col--offset-15{margin-left:62.5%}.van-col--16{width:66.66666667%}.van-col--offset-16{margin-left:66.66666667%}.van-col--17{width:70.83333333%}.van-col--offset-17{margin-left:70.83333333%}.van-col--18{width:75%}.van-col--offset-18{margin-left:75%}.van-col--19{width:79.16666667%}.van-col--offset-19{margin-left:79.16666667%}.van-col--20{width:83.33333333%}.van-col--offset-20{margin-left:83.33333333%}.van-col--21{width:87.5%}.van-col--offset-21{margin-left:87.5%}.van-col--22{width:91.66666667%}.van-col--offset-22{margin-left:91.66666667%}.van-col--23{width:95.83333333%}.van-col--offset-23{margin-left:95.83333333%}.van-col--24{width:100%}.van-col--offset-24{margin-left:100%} \ No newline at end of file diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/collapse-item/animate.d.ts b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/collapse-item/animate.d.ts new file mode 100644 index 0000000..32157b6 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/collapse-item/animate.d.ts @@ -0,0 +1,2 @@ +/// +export declare function setContentAnimate(context: WechatMiniprogram.Component.TrivialInstance, expanded: boolean, mounted: boolean): void; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/collapse-item/animate.js b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/collapse-item/animate.js new file mode 100644 index 0000000..5734087 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/collapse-item/animate.js @@ -0,0 +1,43 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.setContentAnimate = void 0; +var utils_1 = require("../common/utils"); +function useAnimation(context, expanded, mounted, height) { + var animation = wx.createAnimation({ + duration: 0, + timingFunction: 'ease-in-out', + }); + if (expanded) { + if (height === 0) { + animation.height('auto').top(1).step(); + } + else { + animation + .height(height) + .top(1) + .step({ + duration: mounted ? 300 : 1, + }) + .height('auto') + .step(); + } + context.setData({ + animation: animation.export(), + }); + return; + } + animation.height(height).top(0).step({ duration: 1 }).height(0).step({ + duration: 300, + }); + context.setData({ + animation: animation.export(), + }); +} +function setContentAnimate(context, expanded, mounted) { + (0, utils_1.getRect)(context, '.van-collapse-item__content') + .then(function (rect) { return rect.height; }) + .then(function (height) { + useAnimation(context, expanded, mounted, height); + }); +} +exports.setContentAnimate = setContentAnimate; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/collapse-item/index.d.ts b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/collapse-item/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/collapse-item/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/collapse-item/index.js b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/collapse-item/index.js new file mode 100644 index 0000000..982490e --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/collapse-item/index.js @@ -0,0 +1,62 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var relation_1 = require("../common/relation"); +var animate_1 = require("./animate"); +(0, component_1.VantComponent)({ + classes: ['title-class', 'content-class'], + relation: (0, relation_1.useParent)('collapse'), + props: { + size: String, + name: null, + title: null, + value: null, + icon: String, + label: String, + disabled: Boolean, + clickable: Boolean, + border: { + type: Boolean, + value: true, + }, + isLink: { + type: Boolean, + value: true, + }, + }, + data: { + expanded: false, + }, + mounted: function () { + this.updateExpanded(); + this.mounted = true; + }, + methods: { + updateExpanded: function () { + if (!this.parent) { + return; + } + var _a = this.parent.data, value = _a.value, accordion = _a.accordion; + var _b = this.parent.children, children = _b === void 0 ? [] : _b; + var name = this.data.name; + var index = children.indexOf(this); + var currentName = name == null ? index : name; + var expanded = accordion + ? value === currentName + : (value || []).some(function (name) { return name === currentName; }); + if (expanded !== this.data.expanded) { + (0, animate_1.setContentAnimate)(this, expanded, this.mounted); + } + this.setData({ index: index, expanded: expanded }); + }, + onClick: function () { + if (this.data.disabled) { + return; + } + var _a = this.data, name = _a.name, expanded = _a.expanded; + var index = this.parent.children.indexOf(this); + var currentName = name == null ? index : name; + this.parent.switch(currentName, !expanded); + }, + }, +}); diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/collapse-item/index.json b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/collapse-item/index.json new file mode 100644 index 0000000..0e5425c --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/collapse-item/index.json @@ -0,0 +1,6 @@ +{ + "component": true, + "usingComponents": { + "van-cell": "../cell/index" + } +} diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/collapse-item/index.wxml b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/collapse-item/index.wxml new file mode 100644 index 0000000..f11d0d4 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/collapse-item/index.wxml @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/collapse-item/index.wxss b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/collapse-item/index.wxss new file mode 100644 index 0000000..4a65b5a --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/collapse-item/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-collapse-item__title .van-cell__right-icon{transform:rotate(90deg);transition:transform var(--collapse-item-transition-duration,.3s)}.van-collapse-item__title--expanded .van-cell__right-icon{transform:rotate(-90deg)}.van-collapse-item__title--disabled .van-cell,.van-collapse-item__title--disabled .van-cell__right-icon{color:var(--collapse-item-title-disabled-color,#c8c9cc)!important}.van-collapse-item__title--disabled .van-cell--hover{background-color:#fff!important}.van-collapse-item__wrapper{overflow:hidden}.van-collapse-item__content{background-color:var(--collapse-item-content-background-color,#fff);color:var(--collapse-item-content-text-color,#969799);font-size:var(--collapse-item-content-font-size,13px);line-height:var(--collapse-item-content-line-height,1.5);padding:var(--collapse-item-content-padding,15px)} \ No newline at end of file diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/collapse/index.d.ts b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/collapse/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/collapse/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/collapse/index.js b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/collapse/index.js new file mode 100644 index 0000000..943d542 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/collapse/index.js @@ -0,0 +1,48 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var relation_1 = require("../common/relation"); +(0, component_1.VantComponent)({ + relation: (0, relation_1.useChildren)('collapse-item'), + props: { + value: { + type: null, + observer: 'updateExpanded', + }, + accordion: { + type: Boolean, + observer: 'updateExpanded', + }, + border: { + type: Boolean, + value: true, + }, + }, + methods: { + updateExpanded: function () { + this.children.forEach(function (child) { + child.updateExpanded(); + }); + }, + switch: function (name, expanded) { + var _a = this.data, accordion = _a.accordion, value = _a.value; + var changeItem = name; + if (!accordion) { + name = expanded + ? (value || []).concat(name) + : (value || []).filter(function (activeName) { return activeName !== name; }); + } + else { + name = expanded ? name : ''; + } + if (expanded) { + this.$emit('open', changeItem); + } + else { + this.$emit('close', changeItem); + } + this.$emit('change', name); + this.$emit('input', name); + }, + }, +}); diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/collapse/index.json b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/collapse/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/collapse/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/collapse/index.wxml b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/collapse/index.wxml new file mode 100644 index 0000000..fd4e171 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/collapse/index.wxml @@ -0,0 +1,3 @@ + + + diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/collapse/index.wxss b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/collapse/index.wxss new file mode 100644 index 0000000..99694d6 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/collapse/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss'; \ No newline at end of file diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/color.d.ts b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/color.d.ts new file mode 100644 index 0000000..386f307 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/color.d.ts @@ -0,0 +1,7 @@ +export declare const RED = "#ee0a24"; +export declare const BLUE = "#1989fa"; +export declare const WHITE = "#fff"; +export declare const GREEN = "#07c160"; +export declare const ORANGE = "#ff976a"; +export declare const GRAY = "#323233"; +export declare const GRAY_DARK = "#969799"; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/color.js b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/color.js new file mode 100644 index 0000000..008a45a --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/color.js @@ -0,0 +1,10 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.GRAY_DARK = exports.GRAY = exports.ORANGE = exports.GREEN = exports.WHITE = exports.BLUE = exports.RED = void 0; +exports.RED = '#ee0a24'; +exports.BLUE = '#1989fa'; +exports.WHITE = '#fff'; +exports.GREEN = '#07c160'; +exports.ORANGE = '#ff976a'; +exports.GRAY = '#323233'; +exports.GRAY_DARK = '#969799'; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/component.d.ts b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/component.d.ts new file mode 100644 index 0000000..1d0fd27 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/component.d.ts @@ -0,0 +1,4 @@ +/// +import { VantComponentOptions } from 'definitions/index'; +declare function VantComponent(vantOptions: VantComponentOptions): void; +export { VantComponent }; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/component.js b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/component.js new file mode 100644 index 0000000..f1ab5c9 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/component.js @@ -0,0 +1,48 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.VantComponent = void 0; +var basic_1 = require("../mixins/basic"); +function mapKeys(source, target, map) { + Object.keys(map).forEach(function (key) { + if (source[key]) { + target[map[key]] = source[key]; + } + }); +} +function VantComponent(vantOptions) { + var options = {}; + mapKeys(vantOptions, options, { + data: 'data', + props: 'properties', + mixins: 'behaviors', + methods: 'methods', + beforeCreate: 'created', + created: 'attached', + mounted: 'ready', + destroyed: 'detached', + classes: 'externalClasses', + }); + // add default externalClasses + options.externalClasses = options.externalClasses || []; + options.externalClasses.push('custom-class'); + // add default behaviors + options.behaviors = options.behaviors || []; + options.behaviors.push(basic_1.basic); + // add relations + var relation = vantOptions.relation; + if (relation) { + options.relations = relation.relations; + options.behaviors.push(relation.mixin); + } + // map field to form-field behavior + if (vantOptions.field) { + options.behaviors.push('wx://form-field'); + } + // add default options + options.options = { + multipleSlots: true, + addGlobalClass: true, + }; + Component(options); +} +exports.VantComponent = VantComponent; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/index.wxss b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/index.wxss new file mode 100644 index 0000000..a73bb7a --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/index.wxss @@ -0,0 +1 @@ +.van-ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.van-multi-ellipsis--l2{-webkit-line-clamp:2}.van-multi-ellipsis--l2,.van-multi-ellipsis--l3{-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden;text-overflow:ellipsis}.van-multi-ellipsis--l3{-webkit-line-clamp:3}.van-clearfix:after{clear:both;content:"";display:table}.van-hairline,.van-hairline--bottom,.van-hairline--left,.van-hairline--right,.van-hairline--surround,.van-hairline--top,.van-hairline--top-bottom{position:relative}.van-hairline--bottom:after,.van-hairline--left:after,.van-hairline--right:after,.van-hairline--surround:after,.van-hairline--top-bottom:after,.van-hairline--top:after,.van-hairline:after{border:0 solid #ebedf0;bottom:-50%;box-sizing:border-box;content:" ";left:-50%;pointer-events:none;position:absolute;right:-50%;top:-50%;transform:scale(.5);transform-origin:center}.van-hairline--top:after{border-top-width:1px}.van-hairline--left:after{border-left-width:1px}.van-hairline--right:after{border-right-width:1px}.van-hairline--bottom:after{border-bottom-width:1px}.van-hairline--top-bottom:after{border-width:1px 0}.van-hairline--surround:after{border-width:1px} \ No newline at end of file diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/relation.d.ts b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/relation.d.ts new file mode 100644 index 0000000..4b5af00 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/relation.d.ts @@ -0,0 +1,15 @@ +/// +declare type TrivialInstance = WechatMiniprogram.Component.TrivialInstance; +export declare function useParent(name: string, onEffect?: (this: TrivialInstance) => void): { + relations: { + [x: string]: WechatMiniprogram.Component.RelationOption; + }; + mixin: string; +}; +export declare function useChildren(name: string, onEffect?: (this: TrivialInstance, target: TrivialInstance) => void): { + relations: { + [x: string]: WechatMiniprogram.Component.RelationOption; + }; + mixin: string; +}; +export {}; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/relation.js b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/relation.js new file mode 100644 index 0000000..008256c --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/relation.js @@ -0,0 +1,65 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.useChildren = exports.useParent = void 0; +function useParent(name, onEffect) { + var _a; + var path = "../".concat(name, "/index"); + return { + relations: (_a = {}, + _a[path] = { + type: 'ancestor', + linked: function () { + onEffect && onEffect.call(this); + }, + linkChanged: function () { + onEffect && onEffect.call(this); + }, + unlinked: function () { + onEffect && onEffect.call(this); + }, + }, + _a), + mixin: Behavior({ + created: function () { + var _this = this; + Object.defineProperty(this, 'parent', { + get: function () { return _this.getRelationNodes(path)[0]; }, + }); + Object.defineProperty(this, 'index', { + // @ts-ignore + get: function () { var _a, _b; return (_b = (_a = _this.parent) === null || _a === void 0 ? void 0 : _a.children) === null || _b === void 0 ? void 0 : _b.indexOf(_this); }, + }); + }, + }), + }; +} +exports.useParent = useParent; +function useChildren(name, onEffect) { + var _a; + var path = "../".concat(name, "/index"); + return { + relations: (_a = {}, + _a[path] = { + type: 'descendant', + linked: function (target) { + onEffect && onEffect.call(this, target); + }, + linkChanged: function (target) { + onEffect && onEffect.call(this, target); + }, + unlinked: function (target) { + onEffect && onEffect.call(this, target); + }, + }, + _a), + mixin: Behavior({ + created: function () { + var _this = this; + Object.defineProperty(this, 'children', { + get: function () { return _this.getRelationNodes(path) || []; }, + }); + }, + }), + }; +} +exports.useChildren = useChildren; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/style/clearfix.wxss b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/style/clearfix.wxss new file mode 100644 index 0000000..442246f --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/style/clearfix.wxss @@ -0,0 +1 @@ +.van-clearfix:after{clear:both;content:"";display:table} \ No newline at end of file diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/style/ellipsis.wxss b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/style/ellipsis.wxss new file mode 100644 index 0000000..ee701df --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/style/ellipsis.wxss @@ -0,0 +1 @@ +.van-ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.van-multi-ellipsis--l2{-webkit-line-clamp:2}.van-multi-ellipsis--l2,.van-multi-ellipsis--l3{-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden;text-overflow:ellipsis}.van-multi-ellipsis--l3{-webkit-line-clamp:3} \ No newline at end of file diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/style/hairline.wxss b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/style/hairline.wxss new file mode 100644 index 0000000..f7c6260 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/style/hairline.wxss @@ -0,0 +1 @@ +.van-hairline,.van-hairline--bottom,.van-hairline--left,.van-hairline--right,.van-hairline--surround,.van-hairline--top,.van-hairline--top-bottom{position:relative}.van-hairline--bottom:after,.van-hairline--left:after,.van-hairline--right:after,.van-hairline--surround:after,.van-hairline--top-bottom:after,.van-hairline--top:after,.van-hairline:after{border:0 solid #ebedf0;bottom:-50%;box-sizing:border-box;content:" ";left:-50%;pointer-events:none;position:absolute;right:-50%;top:-50%;transform:scale(.5);transform-origin:center}.van-hairline--top:after{border-top-width:1px}.van-hairline--left:after{border-left-width:1px}.van-hairline--right:after{border-right-width:1px}.van-hairline--bottom:after{border-bottom-width:1px}.van-hairline--top-bottom:after{border-width:1px 0}.van-hairline--surround:after{border-width:1px} \ No newline at end of file diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/style/mixins/clearfix.wxss b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/style/mixins/clearfix.wxss new file mode 100644 index 0000000..e69de29 diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/style/mixins/ellipsis.wxss b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/style/mixins/ellipsis.wxss new file mode 100644 index 0000000..e69de29 diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/style/mixins/hairline.wxss b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/style/mixins/hairline.wxss new file mode 100644 index 0000000..e69de29 diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/style/var.wxss b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/style/var.wxss new file mode 100644 index 0000000..e69de29 diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/utils.d.ts b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/utils.d.ts new file mode 100644 index 0000000..af36e60 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/utils.d.ts @@ -0,0 +1,14 @@ +/// +/// +export { isDef } from './validator'; +export declare function range(num: number, min: number, max: number): number; +export declare function nextTick(cb: (...args: any[]) => void): void; +export declare function getSystemInfoSync(): WechatMiniprogram.SystemInfo; +export declare function addUnit(value?: string | number): string | undefined; +export declare function requestAnimationFrame(cb: () => void): NodeJS.Timeout | WechatMiniprogram.NodesRef; +export declare function pickExclude(obj: unknown, keys: string[]): {}; +export declare function getRect(context: WechatMiniprogram.Component.TrivialInstance, selector: string): Promise; +export declare function getAllRect(context: WechatMiniprogram.Component.TrivialInstance, selector: string): Promise; +export declare function groupSetData(context: WechatMiniprogram.Component.TrivialInstance, cb: () => void): void; +export declare function toPromise(promiseLike: Promise | unknown): Promise; +export declare function getCurrentPage(): T & WechatMiniprogram.OptionalInterface & WechatMiniprogram.Page.InstanceProperties & WechatMiniprogram.Page.InstanceMethods & WechatMiniprogram.Page.Data & WechatMiniprogram.IAnyObject; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/utils.js b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/utils.js new file mode 100644 index 0000000..8966b00 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/utils.js @@ -0,0 +1,113 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.getCurrentPage = exports.toPromise = exports.groupSetData = exports.getAllRect = exports.getRect = exports.pickExclude = exports.requestAnimationFrame = exports.addUnit = exports.getSystemInfoSync = exports.nextTick = exports.range = exports.isDef = void 0; +var validator_1 = require("./validator"); +var version_1 = require("./version"); +var validator_2 = require("./validator"); +Object.defineProperty(exports, "isDef", { enumerable: true, get: function () { return validator_2.isDef; } }); +function range(num, min, max) { + return Math.min(Math.max(num, min), max); +} +exports.range = range; +function nextTick(cb) { + if ((0, version_1.canIUseNextTick)()) { + wx.nextTick(cb); + } + else { + setTimeout(function () { + cb(); + }, 1000 / 30); + } +} +exports.nextTick = nextTick; +var systemInfo; +function getSystemInfoSync() { + if (systemInfo == null) { + systemInfo = wx.getSystemInfoSync(); + } + return systemInfo; +} +exports.getSystemInfoSync = getSystemInfoSync; +function addUnit(value) { + if (!(0, validator_1.isDef)(value)) { + return undefined; + } + value = String(value); + return (0, validator_1.isNumber)(value) ? "".concat(value, "px") : value; +} +exports.addUnit = addUnit; +function requestAnimationFrame(cb) { + var systemInfo = getSystemInfoSync(); + if (systemInfo.platform === 'devtools') { + return setTimeout(function () { + cb(); + }, 1000 / 30); + } + return wx + .createSelectorQuery() + .selectViewport() + .boundingClientRect() + .exec(function () { + cb(); + }); +} +exports.requestAnimationFrame = requestAnimationFrame; +function pickExclude(obj, keys) { + if (!(0, validator_1.isPlainObject)(obj)) { + return {}; + } + return Object.keys(obj).reduce(function (prev, key) { + if (!keys.includes(key)) { + prev[key] = obj[key]; + } + return prev; + }, {}); +} +exports.pickExclude = pickExclude; +function getRect(context, selector) { + return new Promise(function (resolve) { + wx.createSelectorQuery() + .in(context) + .select(selector) + .boundingClientRect() + .exec(function (rect) { + if (rect === void 0) { rect = []; } + return resolve(rect[0]); + }); + }); +} +exports.getRect = getRect; +function getAllRect(context, selector) { + return new Promise(function (resolve) { + wx.createSelectorQuery() + .in(context) + .selectAll(selector) + .boundingClientRect() + .exec(function (rect) { + if (rect === void 0) { rect = []; } + return resolve(rect[0]); + }); + }); +} +exports.getAllRect = getAllRect; +function groupSetData(context, cb) { + if ((0, version_1.canIUseGroupSetData)()) { + context.groupSetData(cb); + } + else { + cb(); + } +} +exports.groupSetData = groupSetData; +function toPromise(promiseLike) { + if ((0, validator_1.isPromise)(promiseLike)) { + return promiseLike; + } + return Promise.resolve(promiseLike); +} +exports.toPromise = toPromise; +function getCurrentPage() { + var pages = getCurrentPages(); + return pages[pages.length - 1]; +} +exports.getCurrentPage = getCurrentPage; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/validator.d.ts b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/validator.d.ts new file mode 100644 index 0000000..152894a --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/validator.d.ts @@ -0,0 +1,9 @@ +export declare function isFunction(val: unknown): val is Function; +export declare function isPlainObject(val: unknown): val is Record; +export declare function isPromise(val: unknown): val is Promise; +export declare function isDef(value: unknown): boolean; +export declare function isObj(x: unknown): x is Record; +export declare function isNumber(value: string): boolean; +export declare function isBoolean(value: unknown): value is boolean; +export declare function isImageUrl(url: string): boolean; +export declare function isVideoUrl(url: string): boolean; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/validator.js b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/validator.js new file mode 100644 index 0000000..169e796 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/validator.js @@ -0,0 +1,43 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.isVideoUrl = exports.isImageUrl = exports.isBoolean = exports.isNumber = exports.isObj = exports.isDef = exports.isPromise = exports.isPlainObject = exports.isFunction = void 0; +// eslint-disable-next-line @typescript-eslint/ban-types +function isFunction(val) { + return typeof val === 'function'; +} +exports.isFunction = isFunction; +function isPlainObject(val) { + return val !== null && typeof val === 'object' && !Array.isArray(val); +} +exports.isPlainObject = isPlainObject; +function isPromise(val) { + return isPlainObject(val) && isFunction(val.then) && isFunction(val.catch); +} +exports.isPromise = isPromise; +function isDef(value) { + return value !== undefined && value !== null; +} +exports.isDef = isDef; +function isObj(x) { + var type = typeof x; + return x !== null && (type === 'object' || type === 'function'); +} +exports.isObj = isObj; +function isNumber(value) { + return /^\d+(\.\d+)?$/.test(value); +} +exports.isNumber = isNumber; +function isBoolean(value) { + return typeof value === 'boolean'; +} +exports.isBoolean = isBoolean; +var IMAGE_REGEXP = /\.(jpeg|jpg|gif|png|svg|webp|jfif|bmp|dpg)/i; +var VIDEO_REGEXP = /\.(mp4|mpg|mpeg|dat|asf|avi|rm|rmvb|mov|wmv|flv|mkv)/i; +function isImageUrl(url) { + return IMAGE_REGEXP.test(url); +} +exports.isImageUrl = isImageUrl; +function isVideoUrl(url) { + return VIDEO_REGEXP.test(url); +} +exports.isVideoUrl = isVideoUrl; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/version.d.ts b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/version.d.ts new file mode 100644 index 0000000..988b226 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/version.d.ts @@ -0,0 +1,7 @@ +export declare function canIUseModel(): boolean; +export declare function canIUseFormFieldButton(): boolean; +export declare function canIUseAnimate(): boolean; +export declare function canIUseGroupSetData(): boolean; +export declare function canIUseNextTick(): boolean; +export declare function canIUseCanvas2d(): boolean; +export declare function canIUseGetUserProfile(): boolean; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/version.js b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/version.js new file mode 100644 index 0000000..1e49e30 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/common/version.js @@ -0,0 +1,58 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.canIUseGetUserProfile = exports.canIUseCanvas2d = exports.canIUseNextTick = exports.canIUseGroupSetData = exports.canIUseAnimate = exports.canIUseFormFieldButton = exports.canIUseModel = void 0; +var utils_1 = require("./utils"); +function compareVersion(v1, v2) { + v1 = v1.split('.'); + v2 = v2.split('.'); + var len = Math.max(v1.length, v2.length); + while (v1.length < len) { + v1.push('0'); + } + while (v2.length < len) { + v2.push('0'); + } + for (var i = 0; i < len; i++) { + var num1 = parseInt(v1[i], 10); + var num2 = parseInt(v2[i], 10); + if (num1 > num2) { + return 1; + } + if (num1 < num2) { + return -1; + } + } + return 0; +} +function gte(version) { + var system = (0, utils_1.getSystemInfoSync)(); + return compareVersion(system.SDKVersion, version) >= 0; +} +function canIUseModel() { + return gte('2.9.3'); +} +exports.canIUseModel = canIUseModel; +function canIUseFormFieldButton() { + return gte('2.10.3'); +} +exports.canIUseFormFieldButton = canIUseFormFieldButton; +function canIUseAnimate() { + return gte('2.9.0'); +} +exports.canIUseAnimate = canIUseAnimate; +function canIUseGroupSetData() { + return gte('2.4.0'); +} +exports.canIUseGroupSetData = canIUseGroupSetData; +function canIUseNextTick() { + return wx.canIUse('nextTick'); +} +exports.canIUseNextTick = canIUseNextTick; +function canIUseCanvas2d() { + return gte('2.9.0'); +} +exports.canIUseCanvas2d = canIUseCanvas2d; +function canIUseGetUserProfile() { + return !!wx.getUserProfile; +} +exports.canIUseGetUserProfile = canIUseGetUserProfile; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/config-provider/index.d.ts b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/config-provider/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/config-provider/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/config-provider/index.js b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/config-provider/index.js new file mode 100644 index 0000000..21fb1c4 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/config-provider/index.js @@ -0,0 +1,11 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + props: { + themeVars: { + type: Object, + value: {}, + }, + }, +}); diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/config-provider/index.json b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/config-provider/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/config-provider/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/config-provider/index.wxml b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/config-provider/index.wxml new file mode 100644 index 0000000..3cfb461 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/config-provider/index.wxml @@ -0,0 +1,5 @@ + + + + + diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/config-provider/index.wxs b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/config-provider/index.wxs new file mode 100644 index 0000000..7ca0203 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/config-provider/index.wxs @@ -0,0 +1,29 @@ +/* eslint-disable */ +var object = require('../wxs/object.wxs'); +var style = require('../wxs/style.wxs'); + +function kebabCase(word) { + var newWord = word + .replace(getRegExp("[A-Z]", 'g'), function (i) { + return '-' + i; + }) + .toLowerCase() + .replace(getRegExp("^-"), ''); + + return newWord; +} + +function mapThemeVarsToCSSVars(themeVars) { + var cssVars = {}; + object.keys(themeVars).forEach(function (key) { + var cssVarsKey = '--' + kebabCase(key); + cssVars[cssVarsKey] = themeVars[key]; + }); + + return style(cssVars); +} + +module.exports = { + kebabCase: kebabCase, + mapThemeVarsToCSSVars: mapThemeVarsToCSSVars, +}; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/count-down/index.d.ts b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/count-down/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/count-down/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/count-down/index.js b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/count-down/index.js new file mode 100644 index 0000000..afc780b --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/count-down/index.js @@ -0,0 +1,104 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var utils_1 = require("./utils"); +function simpleTick(fn) { + return setTimeout(fn, 30); +} +(0, component_1.VantComponent)({ + props: { + useSlot: Boolean, + millisecond: Boolean, + time: { + type: Number, + observer: 'reset', + }, + format: { + type: String, + value: 'HH:mm:ss', + }, + autoStart: { + type: Boolean, + value: true, + }, + }, + data: { + timeData: (0, utils_1.parseTimeData)(0), + formattedTime: '0', + }, + destroyed: function () { + clearTimeout(this.tid); + this.tid = null; + }, + methods: { + // 开始 + start: function () { + if (this.counting) { + return; + } + this.counting = true; + this.endTime = Date.now() + this.remain; + this.tick(); + }, + // 暂停 + pause: function () { + this.counting = false; + clearTimeout(this.tid); + }, + // 重置 + reset: function () { + this.pause(); + this.remain = this.data.time; + this.setRemain(this.remain); + if (this.data.autoStart) { + this.start(); + } + }, + tick: function () { + if (this.data.millisecond) { + this.microTick(); + } + else { + this.macroTick(); + } + }, + microTick: function () { + var _this = this; + this.tid = simpleTick(function () { + _this.setRemain(_this.getRemain()); + if (_this.remain !== 0) { + _this.microTick(); + } + }); + }, + macroTick: function () { + var _this = this; + this.tid = simpleTick(function () { + var remain = _this.getRemain(); + if (!(0, utils_1.isSameSecond)(remain, _this.remain) || remain === 0) { + _this.setRemain(remain); + } + if (_this.remain !== 0) { + _this.macroTick(); + } + }); + }, + getRemain: function () { + return Math.max(this.endTime - Date.now(), 0); + }, + setRemain: function (remain) { + this.remain = remain; + var timeData = (0, utils_1.parseTimeData)(remain); + if (this.data.useSlot) { + this.$emit('change', timeData); + } + this.setData({ + formattedTime: (0, utils_1.parseFormat)(this.data.format, timeData), + }); + if (remain === 0) { + this.pause(); + this.$emit('finish'); + } + }, + }, +}); diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/count-down/index.json b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/count-down/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/count-down/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/count-down/index.wxml b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/count-down/index.wxml new file mode 100644 index 0000000..e206e16 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/count-down/index.wxml @@ -0,0 +1,4 @@ + + + {{ formattedTime }} + diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/count-down/index.wxss b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/count-down/index.wxss new file mode 100644 index 0000000..8b957f7 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/count-down/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-count-down{color:var(--count-down-text-color,#323233);font-size:var(--count-down-font-size,14px);line-height:var(--count-down-line-height,20px)} \ No newline at end of file diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/count-down/utils.d.ts b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/count-down/utils.d.ts new file mode 100644 index 0000000..e4a58dd --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/count-down/utils.d.ts @@ -0,0 +1,10 @@ +export declare type TimeData = { + days: number; + hours: number; + minutes: number; + seconds: number; + milliseconds: number; +}; +export declare function parseTimeData(time: number): TimeData; +export declare function parseFormat(format: string, timeData: TimeData): string; +export declare function isSameSecond(time1: number, time2: number): boolean; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/count-down/utils.js b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/count-down/utils.js new file mode 100644 index 0000000..a7cfa5f --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/count-down/utils.js @@ -0,0 +1,64 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.isSameSecond = exports.parseFormat = exports.parseTimeData = void 0; +function padZero(num, targetLength) { + if (targetLength === void 0) { targetLength = 2; } + var str = num + ''; + while (str.length < targetLength) { + str = '0' + str; + } + return str; +} +var SECOND = 1000; +var MINUTE = 60 * SECOND; +var HOUR = 60 * MINUTE; +var DAY = 24 * HOUR; +function parseTimeData(time) { + var days = Math.floor(time / DAY); + var hours = Math.floor((time % DAY) / HOUR); + var minutes = Math.floor((time % HOUR) / MINUTE); + var seconds = Math.floor((time % MINUTE) / SECOND); + var milliseconds = Math.floor(time % SECOND); + return { + days: days, + hours: hours, + minutes: minutes, + seconds: seconds, + milliseconds: milliseconds, + }; +} +exports.parseTimeData = parseTimeData; +function parseFormat(format, timeData) { + var days = timeData.days; + var hours = timeData.hours, minutes = timeData.minutes, seconds = timeData.seconds, milliseconds = timeData.milliseconds; + if (format.indexOf('DD') === -1) { + hours += days * 24; + } + else { + format = format.replace('DD', padZero(days)); + } + if (format.indexOf('HH') === -1) { + minutes += hours * 60; + } + else { + format = format.replace('HH', padZero(hours)); + } + if (format.indexOf('mm') === -1) { + seconds += minutes * 60; + } + else { + format = format.replace('mm', padZero(minutes)); + } + if (format.indexOf('ss') === -1) { + milliseconds += seconds * 1000; + } + else { + format = format.replace('ss', padZero(seconds)); + } + return format.replace('SSS', padZero(milliseconds, 3)); +} +exports.parseFormat = parseFormat; +function isSameSecond(time1, time2) { + return Math.floor(time1 / 1000) === Math.floor(time2 / 1000); +} +exports.isSameSecond = isSameSecond; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/datetime-picker/index.d.ts b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/datetime-picker/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/datetime-picker/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/datetime-picker/index.js b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/datetime-picker/index.js new file mode 100644 index 0000000..e30afef --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/datetime-picker/index.js @@ -0,0 +1,329 @@ +"use strict"; +var __assign = (this && this.__assign) || function () { + __assign = Object.assign || function(t) { + for (var s, i = 1, n = arguments.length; i < n; i++) { + s = arguments[i]; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) + t[p] = s[p]; + } + return t; + }; + return __assign.apply(this, arguments); +}; +var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) { + if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) { + if (ar || !(i in from)) { + if (!ar) ar = Array.prototype.slice.call(from, 0, i); + ar[i] = from[i]; + } + } + return to.concat(ar || Array.prototype.slice.call(from)); +}; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var validator_1 = require("../common/validator"); +var shared_1 = require("../picker/shared"); +var currentYear = new Date().getFullYear(); +function isValidDate(date) { + return (0, validator_1.isDef)(date) && !isNaN(new Date(date).getTime()); +} +function range(num, min, max) { + return Math.min(Math.max(num, min), max); +} +function padZero(val) { + return "00".concat(val).slice(-2); +} +function times(n, iteratee) { + var index = -1; + var result = Array(n < 0 ? 0 : n); + while (++index < n) { + result[index] = iteratee(index); + } + return result; +} +function getTrueValue(formattedValue) { + if (formattedValue === undefined) { + formattedValue = '1'; + } + while (isNaN(parseInt(formattedValue, 10))) { + formattedValue = formattedValue.slice(1); + } + return parseInt(formattedValue, 10); +} +function getMonthEndDay(year, month) { + return 32 - new Date(year, month - 1, 32).getDate(); +} +var defaultFormatter = function (type, value) { return value; }; +(0, component_1.VantComponent)({ + classes: ['active-class', 'toolbar-class', 'column-class'], + props: __assign(__assign({}, shared_1.pickerProps), { value: { + type: null, + observer: 'updateValue', + }, filter: null, type: { + type: String, + value: 'datetime', + observer: 'updateValue', + }, showToolbar: { + type: Boolean, + value: true, + }, formatter: { + type: null, + value: defaultFormatter, + }, minDate: { + type: Number, + value: new Date(currentYear - 10, 0, 1).getTime(), + observer: 'updateValue', + }, maxDate: { + type: Number, + value: new Date(currentYear + 10, 11, 31).getTime(), + observer: 'updateValue', + }, minHour: { + type: Number, + value: 0, + observer: 'updateValue', + }, maxHour: { + type: Number, + value: 23, + observer: 'updateValue', + }, minMinute: { + type: Number, + value: 0, + observer: 'updateValue', + }, maxMinute: { + type: Number, + value: 59, + observer: 'updateValue', + } }), + data: { + innerValue: Date.now(), + columns: [], + }, + methods: { + updateValue: function () { + var _this = this; + var data = this.data; + var val = this.correctValue(data.value); + var isEqual = val === data.innerValue; + this.updateColumnValue(val).then(function () { + if (!isEqual) { + _this.$emit('input', val); + } + }); + }, + getPicker: function () { + if (this.picker == null) { + this.picker = this.selectComponent('.van-datetime-picker'); + var picker_1 = this.picker; + var setColumnValues_1 = picker_1.setColumnValues; + picker_1.setColumnValues = function () { + var args = []; + for (var _i = 0; _i < arguments.length; _i++) { + args[_i] = arguments[_i]; + } + return setColumnValues_1.apply(picker_1, __spreadArray(__spreadArray([], args, true), [false], false)); + }; + } + return this.picker; + }, + updateColumns: function () { + var _a = this.data.formatter, formatter = _a === void 0 ? defaultFormatter : _a; + var results = this.getOriginColumns().map(function (column) { return ({ + values: column.values.map(function (value) { return formatter(column.type, value); }), + }); }); + return this.set({ columns: results }); + }, + getOriginColumns: function () { + var filter = this.data.filter; + var results = this.getRanges().map(function (_a) { + var type = _a.type, range = _a.range; + var values = times(range[1] - range[0] + 1, function (index) { + var value = range[0] + index; + return type === 'year' ? "".concat(value) : padZero(value); + }); + if (filter) { + values = filter(type, values); + } + return { type: type, values: values }; + }); + return results; + }, + getRanges: function () { + var data = this.data; + if (data.type === 'time') { + return [ + { + type: 'hour', + range: [data.minHour, data.maxHour], + }, + { + type: 'minute', + range: [data.minMinute, data.maxMinute], + }, + ]; + } + var _a = this.getBoundary('max', data.innerValue), maxYear = _a.maxYear, maxDate = _a.maxDate, maxMonth = _a.maxMonth, maxHour = _a.maxHour, maxMinute = _a.maxMinute; + var _b = this.getBoundary('min', data.innerValue), minYear = _b.minYear, minDate = _b.minDate, minMonth = _b.minMonth, minHour = _b.minHour, minMinute = _b.minMinute; + var result = [ + { + type: 'year', + range: [minYear, maxYear], + }, + { + type: 'month', + range: [minMonth, maxMonth], + }, + { + type: 'day', + range: [minDate, maxDate], + }, + { + type: 'hour', + range: [minHour, maxHour], + }, + { + type: 'minute', + range: [minMinute, maxMinute], + }, + ]; + if (data.type === 'date') + result.splice(3, 2); + if (data.type === 'year-month') + result.splice(2, 3); + return result; + }, + correctValue: function (value) { + var data = this.data; + // validate value + var isDateType = data.type !== 'time'; + if (isDateType && !isValidDate(value)) { + value = data.minDate; + } + else if (!isDateType && !value) { + var minHour = data.minHour; + value = "".concat(padZero(minHour), ":00"); + } + // time type + if (!isDateType) { + var _a = value.split(':'), hour = _a[0], minute = _a[1]; + hour = padZero(range(hour, data.minHour, data.maxHour)); + minute = padZero(range(minute, data.minMinute, data.maxMinute)); + return "".concat(hour, ":").concat(minute); + } + // date type + value = Math.max(value, data.minDate); + value = Math.min(value, data.maxDate); + return value; + }, + getBoundary: function (type, innerValue) { + var _a; + var value = new Date(innerValue); + var boundary = new Date(this.data["".concat(type, "Date")]); + var year = boundary.getFullYear(); + var month = 1; + var date = 1; + var hour = 0; + var minute = 0; + if (type === 'max') { + month = 12; + date = getMonthEndDay(value.getFullYear(), value.getMonth() + 1); + hour = 23; + minute = 59; + } + if (value.getFullYear() === year) { + month = boundary.getMonth() + 1; + if (value.getMonth() + 1 === month) { + date = boundary.getDate(); + if (value.getDate() === date) { + hour = boundary.getHours(); + if (value.getHours() === hour) { + minute = boundary.getMinutes(); + } + } + } + } + return _a = {}, + _a["".concat(type, "Year")] = year, + _a["".concat(type, "Month")] = month, + _a["".concat(type, "Date")] = date, + _a["".concat(type, "Hour")] = hour, + _a["".concat(type, "Minute")] = minute, + _a; + }, + onCancel: function () { + this.$emit('cancel'); + }, + onConfirm: function () { + this.$emit('confirm', this.data.innerValue); + }, + onChange: function () { + var _this = this; + var data = this.data; + var value; + var picker = this.getPicker(); + var originColumns = this.getOriginColumns(); + if (data.type === 'time') { + var indexes = picker.getIndexes(); + value = "".concat(+originColumns[0].values[indexes[0]], ":").concat(+originColumns[1] + .values[indexes[1]]); + } + else { + var indexes = picker.getIndexes(); + var values = indexes.map(function (value, index) { return originColumns[index].values[value]; }); + var year = getTrueValue(values[0]); + var month = getTrueValue(values[1]); + var maxDate = getMonthEndDay(year, month); + var date = getTrueValue(values[2]); + if (data.type === 'year-month') { + date = 1; + } + date = date > maxDate ? maxDate : date; + var hour = 0; + var minute = 0; + if (data.type === 'datetime') { + hour = getTrueValue(values[3]); + minute = getTrueValue(values[4]); + } + value = new Date(year, month - 1, date, hour, minute); + } + value = this.correctValue(value); + this.updateColumnValue(value).then(function () { + _this.$emit('input', value); + _this.$emit('change', picker); + }); + }, + updateColumnValue: function (value) { + var _this = this; + var values = []; + var type = this.data.type; + var formatter = this.data.formatter || defaultFormatter; + var picker = this.getPicker(); + if (type === 'time') { + var pair = value.split(':'); + values = [formatter('hour', pair[0]), formatter('minute', pair[1])]; + } + else { + var date = new Date(value); + values = [ + formatter('year', "".concat(date.getFullYear())), + formatter('month', padZero(date.getMonth() + 1)), + ]; + if (type === 'date') { + values.push(formatter('day', padZero(date.getDate()))); + } + if (type === 'datetime') { + values.push(formatter('day', padZero(date.getDate())), formatter('hour', padZero(date.getHours())), formatter('minute', padZero(date.getMinutes()))); + } + } + return this.set({ innerValue: value }) + .then(function () { return _this.updateColumns(); }) + .then(function () { return picker.setValues(values); }); + }, + }, + created: function () { + var _this = this; + var innerValue = this.correctValue(this.data.value); + this.updateColumnValue(innerValue).then(function () { + _this.$emit('input', innerValue); + }); + }, +}); diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/datetime-picker/index.json b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/datetime-picker/index.json new file mode 100644 index 0000000..a778e91 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/datetime-picker/index.json @@ -0,0 +1,6 @@ +{ + "component": true, + "usingComponents": { + "van-picker": "../picker/index" + } +} diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/datetime-picker/index.wxml b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/datetime-picker/index.wxml new file mode 100644 index 0000000..ade2202 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/datetime-picker/index.wxml @@ -0,0 +1,16 @@ + diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/datetime-picker/index.wxss b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/datetime-picker/index.wxss new file mode 100644 index 0000000..99694d6 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/datetime-picker/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss'; \ No newline at end of file diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/definitions/index.d.ts b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/definitions/index.d.ts new file mode 100644 index 0000000..a7cc750 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/definitions/index.d.ts @@ -0,0 +1,27 @@ +/// +interface VantComponentInstance { + parent: WechatMiniprogram.Component.TrivialInstance; + children: WechatMiniprogram.Component.TrivialInstance[]; + index: number; + $emit: (name: string, detail?: unknown, options?: WechatMiniprogram.Component.TriggerEventOption) => void; +} +export declare type VantComponentOptions = { + data?: Data; + field?: boolean; + classes?: string[]; + mixins?: string[]; + props?: Props; + relation?: { + relations: Record; + mixin: string; + }; + methods?: Methods; + beforeCreate?: () => void; + created?: () => void; + mounted?: () => void; + destroyed?: () => void; +} & ThisType, Props, Methods> & Record>; +export {}; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/definitions/index.js b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/definitions/index.js new file mode 100644 index 0000000..c8ad2e5 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/definitions/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dialog/dialog.d.ts b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dialog/dialog.d.ts new file mode 100644 index 0000000..e1f48c2 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dialog/dialog.d.ts @@ -0,0 +1,50 @@ +/// +export declare type Action = 'confirm' | 'cancel' | 'overlay'; +interface DialogOptions { + lang?: string; + show?: boolean; + title?: string; + width?: string | number | null; + zIndex?: number; + theme?: string; + context?: WechatMiniprogram.Page.TrivialInstance | WechatMiniprogram.Component.TrivialInstance; + message?: string; + overlay?: boolean; + selector?: string; + ariaLabel?: string; + className?: string; + customStyle?: string; + transition?: string; + /** + * @deprecated use beforeClose instead + */ + asyncClose?: boolean; + beforeClose?: null | ((action: Action) => Promise | void); + businessId?: number; + sessionFrom?: string; + overlayStyle?: string; + appParameter?: string; + messageAlign?: string; + sendMessageImg?: string; + showMessageCard?: boolean; + sendMessagePath?: string; + sendMessageTitle?: string; + confirmButtonText?: string; + cancelButtonText?: string; + showConfirmButton?: boolean; + showCancelButton?: boolean; + closeOnClickOverlay?: boolean; + confirmButtonOpenType?: string; +} +declare const Dialog: { + (options: DialogOptions): Promise; + alert(options: DialogOptions): Promise; + confirm(options: DialogOptions): Promise; + close(): void; + stopLoading(): void; + currentOptions: DialogOptions; + defaultOptions: DialogOptions; + setDefaultOptions(options: DialogOptions): void; + resetDefaultOptions(): void; +}; +export default Dialog; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dialog/dialog.js b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dialog/dialog.js new file mode 100644 index 0000000..0cba6ab --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dialog/dialog.js @@ -0,0 +1,90 @@ +"use strict"; +var __assign = (this && this.__assign) || function () { + __assign = Object.assign || function(t) { + for (var s, i = 1, n = arguments.length; i < n; i++) { + s = arguments[i]; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) + t[p] = s[p]; + } + return t; + }; + return __assign.apply(this, arguments); +}; +Object.defineProperty(exports, "__esModule", { value: true }); +var queue = []; +var defaultOptions = { + show: false, + title: '', + width: null, + theme: 'default', + message: '', + zIndex: 100, + overlay: true, + selector: '#van-dialog', + className: '', + asyncClose: false, + beforeClose: null, + transition: 'scale', + customStyle: '', + messageAlign: '', + overlayStyle: '', + confirmButtonText: '确认', + cancelButtonText: '取消', + showConfirmButton: true, + showCancelButton: false, + closeOnClickOverlay: false, + confirmButtonOpenType: '', +}; +var currentOptions = __assign({}, defaultOptions); +function getContext() { + var pages = getCurrentPages(); + return pages[pages.length - 1]; +} +var Dialog = function (options) { + options = __assign(__assign({}, currentOptions), options); + return new Promise(function (resolve, reject) { + var context = options.context || getContext(); + var dialog = context.selectComponent(options.selector); + delete options.context; + delete options.selector; + if (dialog) { + dialog.setData(__assign({ callback: function (action, instance) { + action === 'confirm' ? resolve(instance) : reject(instance); + } }, options)); + wx.nextTick(function () { + dialog.setData({ show: true }); + }); + queue.push(dialog); + } + else { + console.warn('未找到 van-dialog 节点,请确认 selector 及 context 是否正确'); + } + }); +}; +Dialog.alert = function (options) { return Dialog(options); }; +Dialog.confirm = function (options) { + return Dialog(__assign({ showCancelButton: true }, options)); +}; +Dialog.close = function () { + queue.forEach(function (dialog) { + dialog.close(); + }); + queue = []; +}; +Dialog.stopLoading = function () { + queue.forEach(function (dialog) { + dialog.stopLoading(); + }); +}; +Dialog.currentOptions = currentOptions; +Dialog.defaultOptions = defaultOptions; +Dialog.setDefaultOptions = function (options) { + currentOptions = __assign(__assign({}, currentOptions), options); + Dialog.currentOptions = currentOptions; +}; +Dialog.resetDefaultOptions = function () { + currentOptions = __assign({}, defaultOptions); + Dialog.currentOptions = currentOptions; +}; +Dialog.resetDefaultOptions(); +exports.default = Dialog; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dialog/index.d.ts b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dialog/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dialog/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dialog/index.js b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dialog/index.js new file mode 100644 index 0000000..3d59264 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dialog/index.js @@ -0,0 +1,127 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var button_1 = require("../mixins/button"); +var color_1 = require("../common/color"); +var utils_1 = require("../common/utils"); +(0, component_1.VantComponent)({ + mixins: [button_1.button], + props: { + show: { + type: Boolean, + observer: function (show) { + !show && this.stopLoading(); + }, + }, + title: String, + message: String, + theme: { + type: String, + value: 'default', + }, + useSlot: Boolean, + className: String, + customStyle: String, + asyncClose: Boolean, + messageAlign: String, + beforeClose: null, + overlayStyle: String, + useTitleSlot: Boolean, + showCancelButton: Boolean, + closeOnClickOverlay: Boolean, + confirmButtonOpenType: String, + width: null, + zIndex: { + type: Number, + value: 2000, + }, + confirmButtonText: { + type: String, + value: '确认', + }, + cancelButtonText: { + type: String, + value: '取消', + }, + confirmButtonColor: { + type: String, + value: color_1.RED, + }, + cancelButtonColor: { + type: String, + value: color_1.GRAY, + }, + showConfirmButton: { + type: Boolean, + value: true, + }, + overlay: { + type: Boolean, + value: true, + }, + transition: { + type: String, + value: 'scale', + }, + }, + data: { + loading: { + confirm: false, + cancel: false, + }, + callback: (function () { }), + }, + methods: { + onConfirm: function () { + this.handleAction('confirm'); + }, + onCancel: function () { + this.handleAction('cancel'); + }, + onClickOverlay: function () { + this.close('overlay'); + }, + close: function (action) { + var _this = this; + this.setData({ show: false }); + wx.nextTick(function () { + _this.$emit('close', action); + var callback = _this.data.callback; + if (callback) { + callback(action, _this); + } + }); + }, + stopLoading: function () { + this.setData({ + loading: { + confirm: false, + cancel: false, + }, + }); + }, + handleAction: function (action) { + var _a; + var _this = this; + this.$emit(action, { dialog: this }); + var _b = this.data, asyncClose = _b.asyncClose, beforeClose = _b.beforeClose; + if (!asyncClose && !beforeClose) { + this.close(action); + return; + } + this.setData((_a = {}, + _a["loading.".concat(action)] = true, + _a)); + if (beforeClose) { + (0, utils_1.toPromise)(beforeClose(action)).then(function (value) { + if (value) { + _this.close(action); + } + else { + _this.stopLoading(); + } + }); + } + }, + }, +}); diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dialog/index.json b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dialog/index.json new file mode 100644 index 0000000..43417fc --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dialog/index.json @@ -0,0 +1,9 @@ +{ + "component": true, + "usingComponents": { + "van-popup": "../popup/index", + "van-button": "../button/index", + "van-goods-action": "../goods-action/index", + "van-goods-action-button": "../goods-action-button/index" + } +} diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dialog/index.wxml b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dialog/index.wxml new file mode 100644 index 0000000..f49dee4 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dialog/index.wxml @@ -0,0 +1,113 @@ + + + + + + {{ title }} + + + + + {{ message }} + + + + + {{ cancelButtonText }} + + + {{ confirmButtonText }} + + + + + + {{ cancelButtonText }} + + + {{ confirmButtonText }} + + + diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dialog/index.wxss b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dialog/index.wxss new file mode 100644 index 0000000..571861a --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dialog/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-dialog{background-color:var(--dialog-background-color,#fff);border-radius:var(--dialog-border-radius,16px);font-size:var(--dialog-font-size,16px);overflow:hidden;top:45%!important;width:var(--dialog-width,320px)}@media (max-width:321px){.van-dialog{width:var(--dialog-small-screen-width,90%)}}.van-dialog__header{font-weight:var(--dialog-header-font-weight,500);line-height:var(--dialog-header-line-height,24px);padding-top:var(--dialog-header-padding-top,24px);text-align:center}.van-dialog__header--isolated{padding:var(--dialog-header-isolated-padding,24px 0)}.van-dialog__message{-webkit-overflow-scrolling:touch;font-size:var(--dialog-message-font-size,14px);line-height:var(--dialog-message-line-height,20px);max-height:var(--dialog-message-max-height,60vh);overflow-y:auto;padding:var(--dialog-message-padding,24px);text-align:center}.van-dialog__message-text{word-wrap:break-word}.van-dialog__message--hasTitle{color:var(--dialog-has-title-message-text-color,#646566);padding-top:var(--dialog-has-title-message-padding-top,8px)}.van-dialog__message--round-button{color:#323233;padding-bottom:16px}.van-dialog__message--left{text-align:left}.van-dialog__message--right{text-align:right}.van-dialog__footer{display:flex}.van-dialog__footer--round-button{padding:8px 24px 16px!important;position:relative!important}.van-dialog__button{flex:1}.van-dialog__cancel,.van-dialog__confirm{border:0!important}.van-dialog-bounce-enter{opacity:0;transform:translate3d(-50%,-50%,0) scale(.7)}.van-dialog-bounce-leave-active{opacity:0;transform:translate3d(-50%,-50%,0) scale(.9)} \ No newline at end of file diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/divider/index.d.ts b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/divider/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/divider/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/divider/index.js b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/divider/index.js new file mode 100644 index 0000000..5c63844 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/divider/index.js @@ -0,0 +1,14 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + props: { + dashed: Boolean, + hairline: Boolean, + contentPosition: String, + fontSize: String, + borderColor: String, + textColor: String, + customStyle: String, + }, +}); diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/divider/index.json b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/divider/index.json new file mode 100644 index 0000000..a89ef4d --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/divider/index.json @@ -0,0 +1,4 @@ +{ + "component": true, + "usingComponents": {} +} diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/divider/index.wxml b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/divider/index.wxml new file mode 100644 index 0000000..f6a5a45 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/divider/index.wxml @@ -0,0 +1,9 @@ + + + + + + diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/divider/index.wxs b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/divider/index.wxs new file mode 100644 index 0000000..215b14f --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/divider/index.wxs @@ -0,0 +1,18 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); +var addUnit = require('../wxs/add-unit.wxs'); + +function rootStyle(data) { + return style([ + { + 'border-color': data.borderColor, + color: data.textColor, + 'font-size': addUnit(data.fontSize), + }, + data.customStyle, + ]); +} + +module.exports = { + rootStyle: rootStyle, +}; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/divider/index.wxss b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/divider/index.wxss new file mode 100644 index 0000000..e91dc44 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/divider/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-divider{align-items:center;border:0 solid var(--divider-border-color,#ebedf0);color:var(--divider-text-color,#969799);display:flex;font-size:var(--divider-font-size,14px);line-height:var(--divider-line-height,24px);margin:var(--divider-margin,16px 0)}.van-divider:after,.van-divider:before{border-color:inherit;border-style:inherit;border-width:1px 0 0;box-sizing:border-box;display:block;flex:1;height:1px}.van-divider:before{content:""}.van-divider--hairline:after,.van-divider--hairline:before{transform:scaleY(.5)}.van-divider--dashed{border-style:dashed}.van-divider--center:before,.van-divider--left:before,.van-divider--right:before{margin-right:var(--divider-content-padding,16px)}.van-divider--center:after,.van-divider--left:after,.van-divider--right:after{content:"";margin-left:var(--divider-content-padding,16px)}.van-divider--left:before{max-width:var(--divider-content-left-width,10%)}.van-divider--right:after{max-width:var(--divider-content-right-width,10%)} \ No newline at end of file diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dropdown-item/index.d.ts b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dropdown-item/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dropdown-item/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dropdown-item/index.js b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dropdown-item/index.js new file mode 100644 index 0000000..42de11f --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dropdown-item/index.js @@ -0,0 +1,107 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var relation_1 = require("../common/relation"); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + field: true, + relation: (0, relation_1.useParent)('dropdown-menu', function () { + this.updateDataFromParent(); + }), + props: { + value: { + type: null, + observer: 'rerender', + }, + title: { + type: String, + observer: 'rerender', + }, + disabled: Boolean, + titleClass: { + type: String, + observer: 'rerender', + }, + options: { + type: Array, + value: [], + observer: 'rerender', + }, + popupStyle: String, + }, + data: { + transition: true, + showPopup: false, + showWrapper: false, + displayTitle: '', + }, + methods: { + rerender: function () { + var _this = this; + wx.nextTick(function () { + var _a; + (_a = _this.parent) === null || _a === void 0 ? void 0 : _a.updateItemListData(); + }); + }, + updateDataFromParent: function () { + if (this.parent) { + var _a = this.parent.data, overlay = _a.overlay, duration = _a.duration, activeColor = _a.activeColor, closeOnClickOverlay = _a.closeOnClickOverlay, direction = _a.direction; + this.setData({ + overlay: overlay, + duration: duration, + activeColor: activeColor, + closeOnClickOverlay: closeOnClickOverlay, + direction: direction, + }); + } + }, + onOpen: function () { + this.$emit('open'); + }, + onOpened: function () { + this.$emit('opened'); + }, + onClose: function () { + this.$emit('close'); + }, + onClosed: function () { + this.$emit('closed'); + this.setData({ showWrapper: false }); + }, + onOptionTap: function (event) { + var option = event.currentTarget.dataset.option; + var value = option.value; + var shouldEmitChange = this.data.value !== value; + this.setData({ showPopup: false, value: value }); + this.$emit('close'); + this.rerender(); + if (shouldEmitChange) { + this.$emit('change', value); + } + }, + toggle: function (show, options) { + var _this = this; + var _a; + if (options === void 0) { options = {}; } + var showPopup = this.data.showPopup; + if (typeof show !== 'boolean') { + show = !showPopup; + } + if (show === showPopup) { + return; + } + this.setData({ + transition: !options.immediate, + showPopup: show, + }); + if (show) { + (_a = this.parent) === null || _a === void 0 ? void 0 : _a.getChildWrapperStyle().then(function (wrapperStyle) { + _this.setData({ wrapperStyle: wrapperStyle, showWrapper: true }); + _this.rerender(); + }); + } + else { + this.rerender(); + } + }, + }, +}); diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dropdown-item/index.json b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dropdown-item/index.json new file mode 100644 index 0000000..88d5409 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dropdown-item/index.json @@ -0,0 +1,8 @@ +{ + "component": true, + "usingComponents": { + "van-popup": "../popup/index", + "van-cell": "../cell/index", + "van-icon": "../icon/index" + } +} diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dropdown-item/index.wxml b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dropdown-item/index.wxml new file mode 100644 index 0000000..dd75292 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dropdown-item/index.wxml @@ -0,0 +1,48 @@ + + + + + + + {{ item.text }} + + + + + + + diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dropdown-item/index.wxss b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dropdown-item/index.wxss new file mode 100644 index 0000000..80505e9 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dropdown-item/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-dropdown-item{left:0;overflow:hidden;position:fixed;right:0}.van-dropdown-item__option{text-align:left}.van-dropdown-item__option--active .van-dropdown-item__icon,.van-dropdown-item__option--active .van-dropdown-item__title{color:var(--dropdown-menu-option-active-color,#ee0a24)}.van-dropdown-item--up{top:0}.van-dropdown-item--down{bottom:0}.van-dropdown-item__icon{display:block;line-height:inherit} \ No newline at end of file diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dropdown-item/shared.d.ts b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dropdown-item/shared.d.ts new file mode 100644 index 0000000..774eb4c --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dropdown-item/shared.d.ts @@ -0,0 +1,5 @@ +export interface Option { + text: string; + value: string | number; + icon: string; +} diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dropdown-item/shared.js b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dropdown-item/shared.js new file mode 100644 index 0000000..c8ad2e5 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dropdown-item/shared.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dropdown-menu/index.d.ts b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dropdown-menu/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dropdown-menu/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dropdown-menu/index.js b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dropdown-menu/index.js new file mode 100644 index 0000000..a589a17 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dropdown-menu/index.js @@ -0,0 +1,117 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var relation_1 = require("../common/relation"); +var utils_1 = require("../common/utils"); +var ARRAY = []; +(0, component_1.VantComponent)({ + field: true, + relation: (0, relation_1.useChildren)('dropdown-item', function () { + this.updateItemListData(); + }), + props: { + activeColor: { + type: String, + observer: 'updateChildrenData', + }, + overlay: { + type: Boolean, + value: true, + observer: 'updateChildrenData', + }, + zIndex: { + type: Number, + value: 10, + }, + duration: { + type: Number, + value: 200, + observer: 'updateChildrenData', + }, + direction: { + type: String, + value: 'down', + observer: 'updateChildrenData', + }, + closeOnClickOverlay: { + type: Boolean, + value: true, + observer: 'updateChildrenData', + }, + closeOnClickOutside: { + type: Boolean, + value: true, + }, + }, + data: { + itemListData: [], + }, + beforeCreate: function () { + var windowHeight = (0, utils_1.getSystemInfoSync)().windowHeight; + this.windowHeight = windowHeight; + ARRAY.push(this); + }, + destroyed: function () { + var _this = this; + ARRAY = ARRAY.filter(function (item) { return item !== _this; }); + }, + methods: { + updateItemListData: function () { + this.setData({ + itemListData: this.children.map(function (child) { return child.data; }), + }); + }, + updateChildrenData: function () { + this.children.forEach(function (child) { + child.updateDataFromParent(); + }); + }, + toggleItem: function (active) { + this.children.forEach(function (item, index) { + var showPopup = item.data.showPopup; + if (index === active) { + item.toggle(); + } + else if (showPopup) { + item.toggle(false, { immediate: true }); + } + }); + }, + close: function () { + this.children.forEach(function (child) { + child.toggle(false, { immediate: true }); + }); + }, + getChildWrapperStyle: function () { + var _this = this; + var _a = this.data, zIndex = _a.zIndex, direction = _a.direction; + return (0, utils_1.getRect)(this, '.van-dropdown-menu').then(function (rect) { + var _a = rect.top, top = _a === void 0 ? 0 : _a, _b = rect.bottom, bottom = _b === void 0 ? 0 : _b; + var offset = direction === 'down' ? bottom : _this.windowHeight - top; + var wrapperStyle = "z-index: ".concat(zIndex, ";"); + if (direction === 'down') { + wrapperStyle += "top: ".concat((0, utils_1.addUnit)(offset), ";"); + } + else { + wrapperStyle += "bottom: ".concat((0, utils_1.addUnit)(offset), ";"); + } + return wrapperStyle; + }); + }, + onTitleTap: function (event) { + var _this = this; + var index = event.currentTarget.dataset.index; + var child = this.children[index]; + if (!child.data.disabled) { + ARRAY.forEach(function (menuItem) { + if (menuItem && + menuItem.data.closeOnClickOutside && + menuItem !== _this) { + menuItem.close(); + } + }); + this.toggleItem(index); + } + }, + }, +}); diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dropdown-menu/index.json b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dropdown-menu/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dropdown-menu/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dropdown-menu/index.wxml b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dropdown-menu/index.wxml new file mode 100644 index 0000000..cfd661d --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dropdown-menu/index.wxml @@ -0,0 +1,23 @@ + + + + + + + + {{ computed.displayTitle(item) }} + + + + + + diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dropdown-menu/index.wxs b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dropdown-menu/index.wxs new file mode 100644 index 0000000..6538854 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dropdown-menu/index.wxs @@ -0,0 +1,16 @@ +/* eslint-disable */ +function displayTitle(item) { + if (item.title) { + return item.title; + } + + var match = item.options.filter(function(option) { + return option.value === item.value; + }); + var displayTitle = match.length ? match[0].text : ''; + return displayTitle; +} + +module.exports = { + displayTitle: displayTitle +}; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dropdown-menu/index.wxss b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dropdown-menu/index.wxss new file mode 100644 index 0000000..daa5748 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/dropdown-menu/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-dropdown-menu{background-color:var(--dropdown-menu-background-color,#fff);box-shadow:var(--dropdown-menu-box-shadow,0 2px 12px hsla(210,1%,40%,.12));display:flex;height:var(--dropdown-menu-height,50px);-webkit-user-select:none;user-select:none}.van-dropdown-menu__item{align-items:center;display:flex;flex:1;justify-content:center;min-width:0}.van-dropdown-menu__item:active{opacity:.7}.van-dropdown-menu__item--disabled:active{opacity:1}.van-dropdown-menu__item--disabled .van-dropdown-menu__title{color:var(--dropdown-menu-title-disabled-text-color,#969799)}.van-dropdown-menu__title{box-sizing:border-box;color:var(--dropdown-menu-title-text-color,#323233);font-size:var(--dropdown-menu-title-font-size,15px);line-height:var(--dropdown-menu-title-line-height,18px);max-width:100%;padding:var(--dropdown-menu-title-padding,0 8px);position:relative}.van-dropdown-menu__title:after{border-color:transparent transparent currentcolor currentcolor;border-style:solid;border-width:3px;content:"";margin-top:-5px;opacity:.8;position:absolute;right:-4px;top:50%;transform:rotate(-45deg)}.van-dropdown-menu__title--active{color:var(--dropdown-menu-title-active-text-color,#ee0a24)}.van-dropdown-menu__title--down:after{margin-top:-1px;transform:rotate(135deg)} \ No newline at end of file diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/empty/index.d.ts b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/empty/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/empty/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/empty/index.js b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/empty/index.js new file mode 100644 index 0000000..755e638 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/empty/index.js @@ -0,0 +1,12 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + props: { + description: String, + image: { + type: String, + value: 'default', + }, + }, +}); diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/empty/index.json b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/empty/index.json new file mode 100644 index 0000000..a89ef4d --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/empty/index.json @@ -0,0 +1,4 @@ +{ + "component": true, + "usingComponents": {} +} diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/empty/index.wxml b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/empty/index.wxml new file mode 100644 index 0000000..9c7b719 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/empty/index.wxml @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + {{ description }} + + + + + + diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/empty/index.wxs b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/empty/index.wxs new file mode 100644 index 0000000..cf92ece --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/empty/index.wxs @@ -0,0 +1,15 @@ +/* eslint-disable */ +var PRESETS = ['error', 'search', 'default', 'network']; + +function imageUrl(image) { + if (PRESETS.indexOf(image) !== -1) { + return 'https://img.yzcdn.cn/vant/empty-image-' + image + '.png'; + } + + return image; +} + +module.exports = { + imageUrl: imageUrl, +}; + diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/empty/index.wxss b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/empty/index.wxss new file mode 100644 index 0000000..0fb74fe --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/empty/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-empty{align-items:center;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;padding:32px 0}.van-empty__image{height:160px;width:160px}.van-empty__image:empty{display:none}.van-empty__image__img{height:100%;width:100%}.van-empty__image:not(:empty)+.van-empty__image{display:none}.van-empty__description{color:#969799;font-size:14px;line-height:20px;margin-top:16px;padding:0 60px}.van-empty__description:empty,.van-empty__description:not(:empty)+.van-empty__description{display:none}.van-empty__bottom{margin-top:24px} \ No newline at end of file diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/field/index.d.ts b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/field/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/field/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/field/index.js b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/field/index.js new file mode 100644 index 0000000..5e93c3a --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/field/index.js @@ -0,0 +1,122 @@ +"use strict"; +var __assign = (this && this.__assign) || function () { + __assign = Object.assign || function(t) { + for (var s, i = 1, n = arguments.length; i < n; i++) { + s = arguments[i]; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) + t[p] = s[p]; + } + return t; + }; + return __assign.apply(this, arguments); +}; +Object.defineProperty(exports, "__esModule", { value: true }); +var utils_1 = require("../common/utils"); +var component_1 = require("../common/component"); +var props_1 = require("./props"); +(0, component_1.VantComponent)({ + field: true, + classes: ['input-class', 'right-icon-class', 'label-class'], + props: __assign(__assign(__assign(__assign({}, props_1.commonProps), props_1.inputProps), props_1.textareaProps), { size: String, icon: String, label: String, error: Boolean, center: Boolean, isLink: Boolean, leftIcon: String, rightIcon: String, autosize: null, required: Boolean, iconClass: String, clickable: Boolean, inputAlign: String, customStyle: String, errorMessage: String, arrowDirection: String, showWordLimit: Boolean, errorMessageAlign: String, readonly: { + type: Boolean, + observer: 'setShowClear', + }, clearable: { + type: Boolean, + observer: 'setShowClear', + }, clearTrigger: { + type: String, + value: 'focus', + }, border: { + type: Boolean, + value: true, + }, titleWidth: { + type: String, + value: '6.2em', + }, clearIcon: { + type: String, + value: 'clear', + } }), + data: { + focused: false, + innerValue: '', + showClear: false, + }, + created: function () { + this.value = this.data.value; + this.setData({ innerValue: this.value }); + }, + methods: { + onInput: function (event) { + var _a = (event.detail || {}).value, value = _a === void 0 ? '' : _a; + this.value = value; + this.setShowClear(); + this.emitChange(); + }, + onFocus: function (event) { + this.focused = true; + this.setShowClear(); + this.$emit('focus', event.detail); + }, + onBlur: function (event) { + this.focused = false; + this.setShowClear(); + this.$emit('blur', event.detail); + }, + onClickIcon: function () { + this.$emit('click-icon'); + }, + onClickInput: function (event) { + this.$emit('click-input', event.detail); + }, + onClear: function () { + var _this = this; + this.setData({ innerValue: '' }); + this.value = ''; + this.setShowClear(); + (0, utils_1.nextTick)(function () { + _this.emitChange(); + _this.$emit('clear', ''); + }); + }, + onConfirm: function (event) { + var _a = (event.detail || {}).value, value = _a === void 0 ? '' : _a; + this.value = value; + this.setShowClear(); + this.$emit('confirm', value); + }, + setValue: function (value) { + this.value = value; + this.setShowClear(); + if (value === '') { + this.setData({ innerValue: '' }); + } + this.emitChange(); + }, + onLineChange: function (event) { + this.$emit('linechange', event.detail); + }, + onKeyboardHeightChange: function (event) { + this.$emit('keyboardheightchange', event.detail); + }, + emitChange: function () { + var _this = this; + this.setData({ value: this.value }); + (0, utils_1.nextTick)(function () { + _this.$emit('input', _this.value); + _this.$emit('change', _this.value); + }); + }, + setShowClear: function () { + var _a = this.data, clearable = _a.clearable, readonly = _a.readonly, clearTrigger = _a.clearTrigger; + var _b = this, focused = _b.focused, value = _b.value; + var showClear = false; + if (clearable && !readonly) { + var hasValue = !!value; + var trigger = clearTrigger === 'always' || (clearTrigger === 'focus' && focused); + showClear = hasValue && trigger; + } + this.setData({ showClear: showClear }); + }, + noop: function () { }, + }, +}); diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/field/index.json b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/field/index.json new file mode 100644 index 0000000..5906c50 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/field/index.json @@ -0,0 +1,7 @@ +{ + "component": true, + "usingComponents": { + "van-cell": "../cell/index", + "van-icon": "../icon/index" + } +} diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/field/index.wxml b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/field/index.wxml new file mode 100644 index 0000000..ec2e0ea --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/field/index.wxml @@ -0,0 +1,56 @@ + + + + + + + {{ label }} + + + + + + + + + + + + + + + + + + + + + {{ value.length >= maxlength ? maxlength : value.length }}/{{ maxlength }} + + + {{ errorMessage }} + + diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/field/index.wxs b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/field/index.wxs new file mode 100644 index 0000000..78575b9 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/field/index.wxs @@ -0,0 +1,18 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); +var addUnit = require('../wxs/add-unit.wxs'); + +function inputStyle(autosize) { + if (autosize && autosize.constructor === 'Object') { + return style({ + 'min-height': addUnit(autosize.minHeight), + 'max-height': addUnit(autosize.maxHeight), + }); + } + + return ''; +} + +module.exports = { + inputStyle: inputStyle, +}; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/field/index.wxss b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/field/index.wxss new file mode 100644 index 0000000..7571fe6 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/field/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-field{--cell-icon-size:var(--field-icon-size,16px)}.van-field__label{color:var(--field-label-color,#646566)}.van-field__label--disabled{color:var(--field-disabled-text-color,#c8c9cc)}.van-field__body{align-items:center;display:flex}.van-field__body--textarea{box-sizing:border-box;line-height:1.2em;min-height:var(--cell-line-height,24px);padding:3.6px 0}.van-field__control:empty+.van-field__control{display:block}.van-field__control{background-color:initial;border:0;box-sizing:border-box;color:var(--field-input-text-color,#323233);display:none;height:var(--cell-line-height,24px);line-height:inherit;margin:0;min-height:var(--cell-line-height,24px);padding:0;position:relative;resize:none;text-align:left;width:100%}.van-field__control:empty{display:none}.van-field__control--textarea{height:var(--field-text-area-min-height,18px);min-height:var(--field-text-area-min-height,18px)}.van-field__control--error{color:var(--field-input-error-text-color,#ee0a24)}.van-field__control--disabled{background-color:initial;color:var(--field-input-disabled-text-color,#c8c9cc);opacity:1}.van-field__control--center{text-align:center}.van-field__control--right{text-align:right}.van-field__control--custom{align-items:center;display:flex;min-height:var(--cell-line-height,24px)}.van-field__placeholder{color:var(--field-placeholder-text-color,#c8c9cc);left:0;pointer-events:none;position:absolute;right:0;top:0}.van-field__placeholder--error{color:var(--field-error-message-color,#ee0a24)}.van-field__icon-root{align-items:center;display:flex;min-height:var(--cell-line-height,24px)}.van-field__clear-root,.van-field__icon-container{line-height:inherit;margin-right:calc(var(--padding-xs, 8px)*-1);padding:0 var(--padding-xs,8px);vertical-align:middle}.van-field__button,.van-field__clear-root,.van-field__icon-container{flex-shrink:0}.van-field__clear-root{color:var(--field-clear-icon-color,#c8c9cc);font-size:var(--field-clear-icon-size,16px)}.van-field__icon-container{color:var(--field-icon-container-color,#969799);font-size:var(--field-icon-size,16px)}.van-field__icon-container:empty{display:none}.van-field__button{padding-left:var(--padding-xs,8px)}.van-field__button:empty{display:none}.van-field__error-message{color:var(--field-error-message-color,#ee0a24);font-size:var(--field-error-message-text-font-size,12px);text-align:left}.van-field__error-message--center{text-align:center}.van-field__error-message--right{text-align:right}.van-field__word-limit{color:var(--field-word-limit-color,#646566);font-size:var(--field-word-limit-font-size,12px);line-height:var(--field-word-limit-line-height,16px);margin-top:var(--padding-base,4px);text-align:right}.van-field__word-num{display:inline}.van-field__word-num--full{color:var(--field-word-num-full-color,#ee0a24)} \ No newline at end of file diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/field/input.wxml b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/field/input.wxml new file mode 100644 index 0000000..efe9a08 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/field/input.wxml @@ -0,0 +1,28 @@ + diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/field/props.d.ts b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/field/props.d.ts new file mode 100644 index 0000000..5cd130a --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/field/props.d.ts @@ -0,0 +1,4 @@ +/// +export declare const commonProps: WechatMiniprogram.Component.PropertyOption; +export declare const inputProps: WechatMiniprogram.Component.PropertyOption; +export declare const textareaProps: WechatMiniprogram.Component.PropertyOption; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/field/props.js b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/field/props.js new file mode 100644 index 0000000..3cb8dca --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/field/props.js @@ -0,0 +1,67 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.textareaProps = exports.inputProps = exports.commonProps = void 0; +exports.commonProps = { + value: { + type: String, + observer: function (value) { + if (value !== this.value) { + this.setData({ innerValue: value }); + this.value = value; + } + }, + }, + placeholder: String, + placeholderStyle: String, + placeholderClass: String, + disabled: Boolean, + maxlength: { + type: Number, + value: -1, + }, + cursorSpacing: { + type: Number, + value: 50, + }, + autoFocus: Boolean, + focus: Boolean, + cursor: { + type: Number, + value: -1, + }, + selectionStart: { + type: Number, + value: -1, + }, + selectionEnd: { + type: Number, + value: -1, + }, + adjustPosition: { + type: Boolean, + value: true, + }, + holdKeyboard: Boolean, +}; +exports.inputProps = { + type: { + type: String, + value: 'text', + }, + password: Boolean, + confirmType: String, + confirmHold: Boolean, + alwaysEmbed: Boolean, +}; +exports.textareaProps = { + autoHeight: Boolean, + fixed: Boolean, + showConfirmBar: { + type: Boolean, + value: true, + }, + disableDefaultPadding: { + type: Boolean, + value: true, + }, +}; diff --git a/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/field/textarea.wxml b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/field/textarea.wxml new file mode 100644 index 0000000..5015a51 --- /dev/null +++ b/src/公告栏-用户部分/miniprogram/miniprogram_npm/@vant/weapp/field/textarea.wxml @@ -0,0 +1,29 @@ +