huangjunfeng_branch
黄俊锋 2 years ago
parent 108da2c166
commit a01d95a342

@ -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: {},
}

@ -1,19 +0,0 @@
# Build and Release Folders
bin/
bin-debug/
bin-release/
[Oo]bj/ # FlashDevelop obj
[Bb]in/ # FlashDevelop bin
# Other files and folders
.settings/
# Executables
*.swf
*.air
*.ipa
*.apk
# Project files, i.e. `.project`, `.actionScriptProperties` and `.flexProperties`
# should NOT be excluded as they contain compiler settings and other important
# information for Eclipse / Flash Builder.

@ -1,24 +1,12 @@
# wechat-weapp-mapdemo # 云开发 quickstart
微信小程序开发mapdemo地图导航、marker标注 这是云开发的快速启动指引,其中演示了如何上手使用云开发的三大基础能力:
版本信息: - 数据库:一个既可在小程序前端操作,也能在云函数中读写的 JSON 文档型数据库
微信web开发者工具 `v0.15.152900` - 文件存储:在小程序前端直接上传/下载云端文件,在云开发控制台可视化管理
- 云函数:在云端运行的代码,微信私有协议天然鉴权,开发者只需编写业务逻辑代码
## 参考文档
## Screenshot - [云开发文档](https://developers.weixin.qq.com/miniprogram/dev/wxcloud/basis/getting-started.html)
![](./image/screenshot1.png)
![](./image/screenshot2.png)
![](./image/navigator.jpg)
![](./image/screenshot-marker.png)
---
## License
MIT

@ -1,30 +0,0 @@
//app.js
App({
onLaunch: function () {
//调用API从本地缓存中获取数据
var logs = wx.getStorageSync('logs') || []
logs.unshift(Date.now())
wx.setStorageSync('logs', logs)
},
getUserInfo:function(cb){
var that = this;
if(this.globalData.userInfo){
typeof cb == "function" && cb(this.globalData.userInfo)
}else{
//调用登录接口
wx.login({
success: function () {
wx.getUserInfo({
success: function (res) {
that.globalData.userInfo = res.userInfo;
typeof cb == "function" && cb(that.globalData.userInfo)
}
})
}
});
}
},
globalData:{
userInfo:null
}
})

@ -1,10 +0,0 @@
/**app.wxss**/
.container {
height: 100%;
display: flex;
flex-direction: column;
align-items: center;
justify-content: space-between;
padding: 200rpx 0;
box-sizing: border-box;
}

@ -0,0 +1,6 @@
{
"permissions": {
"openapi": [
]
}
}

@ -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
}
})
}
}

@ -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"
}
}

@ -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-8gqdspjee7052c97',
traceUser: true,
});
}
this.globalData = {};
}
});

@ -1,18 +1,23 @@
{ {
"pages":[ "pages": [
"pages/login/login", "pages/login/login",
"pages/location/location", "pages/location/location",
"pages/Find directions/Find directions", "pages/Find directions/Find directions",
"pages/text/text", "pages/text/text",
"pages/ModifyMap/ModifyMap", "pages/ModifyMap/ModifyMap",
"pages/ModifyInformation/ModifyInformation", "pages/ModifyInformation/ModifyInformation",
"pages/ManageAccount/ManageAccount" "pages/ManageAccount/ManageAccount",
"pages/index_hjf/index_hjf",
"pages/index1/index1",
"pages/adlogin/adlogin",
"pages/login_1/login_1"
], ],
"window":{ "window": {
"backgroundTextStyle":"light", "backgroundColor": "#F6F6F6",
"navigationBarBackgroundColor": "#fff", "backgroundTextStyle": "light",
"navigationBarTitleText": "login", "navigationBarBackgroundColor": "#F6F6F6",
"navigationBarTextStyle":"black" "navigationBarTitleText": "管理用户",
"navigationBarTextStyle": "black"
}, },
"tabBar": { "tabBar": {
"color": "#dddddd", "color": "#dddddd",
@ -37,6 +42,7 @@
} }
] ]
}, },
"debug": true "debug": true,
} "sitemapLocation": "sitemap.json",
"style": "v2"
}

@ -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;
}

@ -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,
});
},
}
});

@ -0,0 +1,13 @@
<!--miniprogram/components/cloudTipModal/index.wxml-->
<view class="install_tip" wx:if="{{showUploadTip}}">
<view class="install_tip_back"></view>
<view class="install_tip_detail">
<view class="install_tip_detail_title">体验前需部署云资源</view>
<view class="install_tip_detail_tip">请开启调试器进入终端窗口,复制并运行以下命令</view>
<view class="install_tip_detail_shell">
{{tipText}}
<view bindtap="copyShell" class="install_tip_detail_copy">复制</view>
</view>
<view bindtap="onChangeShowUploadTip" class="install_tip_detail_button">已执行命令</view>
</view>
</view>

@ -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;
}

@ -0,0 +1,6 @@
const envList = [{"envId":"cloud1-7gnkwzfv6ba72e50","alias":"cloud1"}]
const isMac = false
module.exports = {
envList,
isMac
}

Before

Width:  |  Height:  |  Size: 5.5 KiB

After

Width:  |  Height:  |  Size: 5.5 KiB

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="8px" height="14px" viewBox="0 0 8 14" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<title>☀ iOS/☀ 图标/线型/icons_outlined_arrow@3x</title>
<g id="控件" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd" fill-opacity="0.3">
<g id="4.列表/z.覆盖层/右边/箭头" transform="translate(-334.000000, -21.000000)" fill="#000000">
<g id="☀-iOS/☀-图标/线型/icons_outlined_arrow" transform="translate(332.000000, 16.000000)">
<path d="M2.45405845,6.58064919 L3.51471863,5.51998901 L9.29361566,11.298886 C9.68374096,11.6890113 9.6872014,12.318069 9.29361566,12.7116547 L3.51471863,18.4905518 L2.45405845,17.4298916 L7.87867966,12.0052704 L2.45405845,6.58064919 Z" id="Combined-Shape"></path>
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 906 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 155 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 328 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 181 KiB

Before

Width:  |  Height:  |  Size: 115 KiB

After

Width:  |  Height:  |  Size: 115 KiB

Before

Width:  |  Height:  |  Size: 139 KiB

After

Width:  |  Height:  |  Size: 139 KiB

@ -17,7 +17,7 @@ Page({
//account //account
account() { account() {
wx.navigateTo({ wx.navigateTo({
url: '/pages/ManageAccount/ManageAccount' url: '/pages/index/index'
}) })
} }
}) })

@ -17,7 +17,7 @@ Page({
//account //account
account() { account() {
wx.navigateTo({ wx.navigateTo({
url: '/pages/ManageAccount/ManageAccount' url: '/pages/index/index'
}) })
} }
}) })

@ -17,7 +17,7 @@ Page({
//account //account
account() { account() {
wx.navigateTo({ wx.navigateTo({
url: '/pages/ManageAccount/ManageAccount' url: '/pages/index/index'
}) })
} }
}) })

@ -1,5 +1,5 @@
<view class="ModifyMap"> <view class="ModifyMap">
<button class="map" type="primary" bindtap="map" style="position: relative; left: -244rpx; top: 1081rpx; width: 263rpx; height: 108rpx; display: block; box-sizing: border-box">修改地图</button> <button class="map" type="primary" bindtap="map" style="position: relative; left: -272rpx; top: 1081rpx; width: 291rpx; height: 108rpx; display: block; box-sizing: border-box">修改地图</button>
<button class="information" type="primary" bindtap="information" style="width: 263rpx; height: 108rpx; display: block; box-sizing: border-box; left: 19rpx; top: 973rpx; position: relative">修改信息</button> <button class="information" type="primary" bindtap="information" style="width: 291rpx; height: 108rpx; display: block; box-sizing: border-box; left: -10rpx; top: 973rpx; position: relative">修改信息</button>
<button class="account" type="primary" bindtap="account" style="width: 263rpx; height: 108rpx; display: block; box-sizing: border-box; left: 282rpx; top: 865rpx; position: relative">管理账户</button> <button class="account" type="primary" bindtap="account" style="width: 291rpx; height: 108rpx; display: block; box-sizing: border-box; left: 282rpx; top: 865rpx; position: relative">管理账户</button>
</view> </view>

@ -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: '../ModifyMap/ModifyMap',
})
//保存管理员登陆状态
wx.setStorageSync('manager', manager)
} else {
console.log('登陆失败')
wx.showToast({
icon: 'none',
title: '账号或密码不正确',
})
}
},
fail(res) {
console.log("获取数据失败", res)
}
})
}
})

@ -0,0 +1,5 @@
输入管理员账号
<input class="input" bindinput="getAccount"></input>
输入管理员密码
<input class="input" bindinput="getPassword"></input>
<button bindtap="guanliyuanlogin" type="primary">登录</button>

@ -0,0 +1,5 @@
/* pages/adlogin/adlogin.wxss */
.input{
border: 1px solid gainsboro;
margin: 20rpx;
}

@ -0,0 +1,66 @@
// pages/home/home.js
Page({
/**
* 页面的初始数据
*/
data: {
},
/**
* 生命周期函数--监听页面加载
*/
onLoad(options) {
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady() {
},
/**
* 生命周期函数--监听页面显示
*/
onShow() {
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide() {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload() {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh() {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom() {
},
/**
* 用户点击右上角分享
*/
onShareAppMessage() {
}
})

@ -0,0 +1,2 @@
<!--pages/home/home.wxml-->
<text>pages/home/home.wxml</text>

@ -0,0 +1,66 @@
// pages/index/index.js
Page({
/**
* 页面的初始数据
*/
data: {
},
/**
* 生命周期函数--监听页面加载
*/
onLoad(options) {
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady() {
},
/**
* 生命周期函数--监听页面显示
*/
onShow() {
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide() {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload() {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh() {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom() {
},
/**
* 用户点击右上角分享
*/
onShareAppMessage() {
}
})

@ -0,0 +1,2 @@
<!--pages/index/index.wxml-->
<text>pages/index/index.wxml</text>

@ -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)
}
})
}
})

@ -0,0 +1,8 @@
<!--index.wxml-->
输入管理员用户名
<input class="input" bindinput="getName"></input>
输入管理员用户账号
<input class="input" bindinput="getAccount"></input>
输入管理员密码
<input class="input" bindinput="getPassword"></input>
<button bindtap="adzhuce" type="primary">管理员注册</button>

@ -0,0 +1,5 @@
/**index.wxss**/
.input{
border: 1px solid gainsboro;
margin: 15rpx;
}

@ -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)
}
})
}
})

@ -0,0 +1,8 @@
<!--index.wxml-->
输入用户名
<input class="input" bindinput="getName"></input>
输入用户账号
<input class="input" bindinput="getZhangHao"></input>
输入密码
<input class="input" bindinput="getMiMa"></input>
<button bindtap="zhuce" type="primary">注册</button>

@ -0,0 +1,5 @@
/**index.wxss**/
.input{
border: 1px solid gainsboro;
margin: 15rpx;
}

@ -5,7 +5,8 @@ Page({
user_name:'', user_name:'',
user_password:'' user_password:''
}, },
//输入用户名
//输入用户名
userNameChange: function (e) { userNameChange: function (e) {
this.data.user_name = e.detail.value; this.data.user_name = e.detail.value;
}, },
@ -13,7 +14,28 @@ Page({
userPasswordChange: function (e) { userPasswordChange: function (e) {
this.data.user_password = e.detail.value; this.data.user_password = e.detail.value;
}, },
showLive: function () { 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({ wx.reLaunch({
url: '../Find directions/Find directions', url: '../Find directions/Find directions',
}) })
@ -24,5 +46,5 @@ Page({
url:'../ModifyMap/ModifyMap' url:'../ModifyMap/ModifyMap'
} }
) )
} }*/
}) })

@ -0,0 +1,25 @@
<!--<view class="page">
<view class="page__bd">
<view class="weui-toptips weui-toptips_warn" wx:if="{{showTopTips}}">错误提示</view>
<view class="weui-btn-area" bindtap="denglu" style="width: 750rpx; height: 190rpx; display: block; box-sizing: border-box; left: 0rpx; top: 0rpx">
<button class="denglu" type="primary" style="width: 347rpx; height: 108rpx; display: block; box-sizing: border-box; left: -174rpx; top: 95rpx; position: relative">用户登陆</button>
</view>
<view class="weui-btn-area" bindtap="zhuce" style="width: 750rpx; height: 190rpx; display: block; box-sizing: border-box; left: 0rpx; top: 0rpx">
<button class="zhuce" type="primary" style="width: 347rpx; height: 108rpx; display: block; box-sizing: border-box; left: -174rpx; top: 83rpx; position: relative">用户注册</button>
</view>
<view class="weui-btn-area" bindtap="guanliyuandenglu">
<button class="weui-btn" type="primary" style="width: 331rpx; height: 108rpx; display: block; box-sizing: border-box; left: 210rpx; top: -108rpx; position: relative">管理员登陆</button>
</view>
<view class="weui-btn-area" bindtap="adzhuce" style="width: 750rpx; height: 190rpx; display: block; box-sizing: border-box; left: 0rpx; top: 0rpx">
<button class="adzhuce" type="primary" style="width: 347rpx; height: 108rpx; display: block; box-sizing: border-box; left: -174rpx; top: -61rpx; position: relative">管理员注册</button>
</view>
<view class="weui-cells__title" style="position: relative; left: 0rpx; top: -79rpx">注册,忘记密码请联系qq:xx</view>
</view>
</view>-->
<view class="login">
<button class="denglu" type="primary" bindtap="denglu">登录</button>
<button class="zhuce" type="primary" bindtap="zhuce">注册</button>
<button class="guanliyuandenglu" type="primary" bindtap="guanliyuandenglu">管理员登录</button>
<button class="adzhuce" type="primary" bindtap="adzhuce">管理员注册</button>
</view>

@ -0,0 +1,18 @@
/**index.wxss**/
.denglu{
margin-top: 30rpx;
}
.guanliyuandenglu{
margin-top: 30rpx;
}
.zhuce{
margin-top: 30rpx;
}
.adzhuce{
margin-top: 30rpx;
}
.login-ok{
text-align: center;
font-size: large;
}

@ -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: '../Find directions/Find directions',
})
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)
}
})
}
})

@ -0,0 +1,8 @@
<!--pages/login/login.wxml-->
输入账号
<input class="input" bindinput="getZhanghao"></input>
输入密码
<input class="input" bindinput="getMima"></input>
<button bindtap="login" type="primary">登录</button>

@ -0,0 +1,5 @@
/* pages/login/login.wxss */
.input{
border: 1px solid gainsboro;
margin: 20rpx;
}

@ -0,0 +1,66 @@
// pages/me/me.js
Page({
/**
* 页面的初始数据
*/
data: {
},
/**
* 生命周期函数--监听页面加载
*/
onLoad(options) {
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady() {
},
/**
* 生命周期函数--监听页面显示
*/
onShow() {
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide() {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload() {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh() {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom() {
},
/**
* 用户点击右上角分享
*/
onShareAppMessage() {
}
})

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save