@ -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: {}, |
|||
} |
@ -0,0 +1,12 @@ |
|||
// app.js
|
|||
App({ |
|||
onLaunch: function () { |
|||
//显示红字,badge
|
|||
}, |
|||
globalData: { |
|||
userInfo: null |
|||
}, |
|||
globalData: { |
|||
userInfo: null |
|||
} |
|||
}) |
@ -0,0 +1,63 @@ |
|||
{ |
|||
"pages": [ |
|||
"pages/index/index", |
|||
"pages/logs/logs", |
|||
"pages/login/login", |
|||
"pages/message/message", |
|||
"pages/work/work", |
|||
"pages/information/information", |
|||
"pages/mine/mine" |
|||
], |
|||
"subPackages":[ |
|||
{ |
|||
"root": "subpages/addhouse", |
|||
"name": "addhouse", |
|||
"pages": [ |
|||
"pages/addhouse/addhouse" |
|||
] |
|||
} |
|||
], |
|||
"window": { |
|||
"backgroundTextStyle": "light", |
|||
"navigationBarBackgroundColor": "#fff", |
|||
"navigationBarTitleText": "WeChat", |
|||
"navigationBarTextStyle": "black" |
|||
}, |
|||
"tabBar": { |
|||
"color": "#2c2c2c", |
|||
"selectedColor": "#e40031", |
|||
"backgroundColor": "#FFFFFF", |
|||
"borderStyle": "white", |
|||
"list": [ |
|||
{ |
|||
"pagePath": "pages/index/index", |
|||
"text": "消息", |
|||
"iconPath": "images/home/message.png", |
|||
"selectedIconPath": "images/home/messageSelected.png" |
|||
}, |
|||
{ |
|||
"pagePath": "pages/work/work", |
|||
"text": "工作", |
|||
"iconPath": "images/home/work.png", |
|||
"selectedIconPath": "images/home/workSelected.png" |
|||
}, |
|||
{ |
|||
"pagePath": "pages/information/information", |
|||
"text": "数据", |
|||
"iconPath": "images/home/information.png", |
|||
"selectedIconPath": "images/home/informationSelected.png" |
|||
}, |
|||
{ |
|||
"pagePath": "pages/mine/mine", |
|||
"text": "我的", |
|||
"iconPath": "images/home/mine.png", |
|||
"selectedIconPath": "images/home/mineSelected.png" |
|||
} |
|||
] |
|||
}, |
|||
"networkTimeout": { |
|||
"request": 60000 |
|||
}, |
|||
"style": "v2", |
|||
"sitemapLocation": "sitemap.json" |
|||
} |
@ -0,0 +1,10 @@ |
|||
/**app.wxss**/ |
|||
.container { |
|||
height: 100%; |
|||
display: flex; |
|||
flex-direction: column; |
|||
align-items: center; |
|||
justify-content: space-between; |
|||
padding: 200rpx 0; |
|||
box-sizing: border-box; |
|||
} |
After Width: | Height: | Size: 293 B |
After Width: | Height: | Size: 272 B |
After Width: | Height: | Size: 315 B |
After Width: | Height: | Size: 318 B |
After Width: | Height: | Size: 383 B |
After Width: | Height: | Size: 380 B |
After Width: | Height: | Size: 304 B |
After Width: | Height: | Size: 307 B |
After Width: | Height: | Size: 3.3 KiB |
After Width: | Height: | Size: 2.8 KiB |
After Width: | Height: | Size: 2.7 KiB |
@ -0,0 +1,48 @@ |
|||
// index.js
|
|||
// 获取应用实例
|
|||
const app = getApp() |
|||
|
|||
Page({ |
|||
data: { |
|||
motto: 'Hello World', |
|||
userInfo: {}, |
|||
hasUserInfo: false, |
|||
canIUse: wx.canIUse('button.open-type.getUserInfo'), |
|||
canIUseGetUserProfile: false, |
|||
canIUseOpenData: wx.canIUse('open-data.type.userAvatarUrl') && wx.canIUse('open-data.type.userNickName') // 如需尝试获取用户信息可改为false
|
|||
}, |
|||
// 事件处理函数
|
|||
bindViewTap() { |
|||
wx.navigateTo({ |
|||
url: '../logs/logs' |
|||
}) |
|||
}, |
|||
onLoad() { |
|||
if (wx.getUserProfile) { |
|||
this.setData({ |
|||
canIUseGetUserProfile: true |
|||
}) |
|||
} |
|||
}, |
|||
getUserProfile(e) { |
|||
// 推荐使用wx.getUserProfile获取用户信息,开发者每次通过该接口获取用户个人信息均需用户确认,开发者妥善保管用户快速填写的头像昵称,避免重复弹窗
|
|||
wx.getUserProfile({ |
|||
desc: '展示用户信息', // 声明获取用户个人信息后的用途,后续会展示在弹窗中,请谨慎填写
|
|||
success: (res) => { |
|||
console.log(res) |
|||
this.setData({ |
|||
userInfo: res.userInfo, |
|||
hasUserInfo: true |
|||
}) |
|||
} |
|||
}) |
|||
}, |
|||
getUserInfo(e) { |
|||
// 不推荐使用getUserInfo获取用户信息,预计自2021年4月13日起,getUserInfo将不再弹出弹窗,并直接返回匿名的用户个人信息
|
|||
console.log(e) |
|||
this.setData({ |
|||
userInfo: e.detail.userInfo, |
|||
hasUserInfo: true |
|||
}) |
|||
} |
|||
}) |
@ -0,0 +1,4 @@ |
|||
{ |
|||
"usingComponents": {}, |
|||
"navigationBarTitleText": "消息" |
|||
} |
@ -0,0 +1,19 @@ |
|||
/**index.wxss**/ |
|||
.userinfo { |
|||
display: flex; |
|||
flex-direction: column; |
|||
align-items: center; |
|||
color: #aaa; |
|||
} |
|||
|
|||
.userinfo-avatar { |
|||
overflow: hidden; |
|||
width: 128rpx; |
|||
height: 128rpx; |
|||
margin: 20rpx; |
|||
border-radius: 50%; |
|||
} |
|||
|
|||
.usermotto { |
|||
margin-top: 200px; |
|||
} |
@ -0,0 +1,66 @@ |
|||
// pages/information/information.js
|
|||
Page({ |
|||
|
|||
/** |
|||
* 页面的初始数据 |
|||
*/ |
|||
data: { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 生命周期函数--监听页面加载 |
|||
*/ |
|||
onLoad(options) { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 生命周期函数--监听页面初次渲染完成 |
|||
*/ |
|||
onReady() { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 生命周期函数--监听页面显示 |
|||
*/ |
|||
onShow() { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 生命周期函数--监听页面隐藏 |
|||
*/ |
|||
onHide() { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 生命周期函数--监听页面卸载 |
|||
*/ |
|||
onUnload() { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 页面相关事件处理函数--监听用户下拉动作 |
|||
*/ |
|||
onPullDownRefresh() { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 页面上拉触底事件的处理函数 |
|||
*/ |
|||
onReachBottom() { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 用户点击右上角分享 |
|||
*/ |
|||
onShareAppMessage() { |
|||
|
|||
} |
|||
}) |
@ -0,0 +1,4 @@ |
|||
{ |
|||
"usingComponents": {}, |
|||
"navigationBarTitleText": "数据" |
|||
} |
@ -0,0 +1,2 @@ |
|||
<!--pages/information/information.wxml--> |
|||
<text>pages/information/information.wxml</text> |
@ -0,0 +1 @@ |
|||
/* pages/information/information.wxss */ |
@ -0,0 +1,130 @@ |
|||
// pages/register/register.js
|
|||
import {userLoginlog} from "../../utils/api" |
|||
Page({ |
|||
|
|||
/** |
|||
* 页面的初始数据 |
|||
*/ |
|||
data: { |
|||
formData:{ |
|||
mobile:'', |
|||
password:'', |
|||
appId:'wxaf87b420b87e2d79' |
|||
} |
|||
}, |
|||
|
|||
/** |
|||
* 生命周期函数--监听页面加载 |
|||
*/ |
|||
onLoad(options) { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 生命周期函数--监听页面初次渲染完成 |
|||
*/ |
|||
onReady() { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 生命周期函数--监听页面显示 |
|||
*/ |
|||
onShow() { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 生命周期函数--监听页面隐藏 |
|||
*/ |
|||
onHide() { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 生命周期函数--监听页面卸载 |
|||
*/ |
|||
onUnload() { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 页面相关事件处理函数--监听用户下拉动作 |
|||
*/ |
|||
onPullDownRefresh() { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 页面上拉触底事件的处理函数 |
|||
*/ |
|||
onReachBottom() { |
|||
|
|||
}, |
|||
handelBlurMobile(e){ |
|||
this.setData({ |
|||
'formData.mobile': e.detail.value |
|||
}) |
|||
console.log(this.data.formData) |
|||
}, |
|||
handelBlurPassword(e){ |
|||
this.setData({ |
|||
'formData.password': e.detail.value |
|||
}) |
|||
console.log(this.data.formData) |
|||
}, |
|||
handelClickSubmit(){ |
|||
if(!this.data.formData.mobile){ |
|||
wx.showToast({ |
|||
title: '请填写手机号', |
|||
icon:'none', |
|||
duration:3000 |
|||
}) |
|||
return |
|||
} |
|||
if(!this.data.formData.password){ |
|||
wx.showToast({ |
|||
title: '请输入密码', |
|||
icon:'none', |
|||
duration:3000 |
|||
}) |
|||
return |
|||
} |
|||
wx.showLoading({ |
|||
title:"登录中..." |
|||
}) |
|||
const parm = { |
|||
wxCode :'', |
|||
...this.data.formData |
|||
} |
|||
wx.login({ |
|||
success: (res) => { |
|||
parm.wxCode = res.code |
|||
userLoginlog(parm).then((res)=>{ |
|||
wx.hideLoading() |
|||
console.log(res); |
|||
if(res.code == 0){ |
|||
wx.switchTab({ |
|||
url: '/pages/work/work', |
|||
}) |
|||
}else{ |
|||
wx.showToast({ |
|||
title: res.msg, |
|||
icon:'none', |
|||
duration:2000 |
|||
}) |
|||
} |
|||
}).catch(err=>{ |
|||
wx.hideLoading() |
|||
console.log(err); |
|||
}) |
|||
}, |
|||
}) |
|||
}, |
|||
/** |
|||
* 用户点击右上角分享 |
|||
*/ |
|||
onShareAppMessage() { |
|||
|
|||
} |
|||
}) |
@ -0,0 +1,5 @@ |
|||
{ |
|||
"navigationBarTitleText": "", |
|||
"usingComponents": {}, |
|||
"navigationBarBackgroundColor": "#1673ee" |
|||
} |
@ -0,0 +1,15 @@ |
|||
<!--pages/register/register.wxml--> |
|||
<view class="header"> |
|||
<image src="../../images/login/hi.png" mode=""/> |
|||
<view->欢迎加入亿星社区</view-> |
|||
</view> |
|||
<view class="login"> |
|||
<view class="input_box"> |
|||
<image src="../../images/login/user.png" mode=""/> |
|||
<input type="text" placeholder="请输入手机号" bindblur="handelBlurMobile" value="{{formData.mobile}}" confirm-type="next"/> |
|||
<image src="../../images/login/password.png" mode=""/> |
|||
<input type="text" confirm-type="go" password="true" placeholder="请输入密码" bindblur="handelBlurPassword" value="{{formData.password}}" /> |
|||
</view> |
|||
<text wx:if="{{false}}">忘记密码</text> |
|||
<button bind:tap="handelClickSubmit">登录</button> |
|||
</view> |
@ -0,0 +1,77 @@ |
|||
/* pages/register/register.wxss */ |
|||
page { |
|||
width: 100%; |
|||
min-height: 100vh; |
|||
overflow-y: auto; |
|||
} |
|||
.header { |
|||
height: 400rpx; |
|||
width: 100%; |
|||
background: linear-gradient(180deg, #1673ee 0%, #66A6FD 63%, #F7F7F7 100%); |
|||
box-sizing: border-box; |
|||
padding: 100rpx 0rpx 100rpx 50rpx; |
|||
font-size: 40rpx; |
|||
color: #FFFFFF; |
|||
display: flex; |
|||
flex-direction: column; |
|||
} |
|||
.header image { |
|||
width: 106rpx; |
|||
height: 94rpx; |
|||
} |
|||
.header view { |
|||
margin-top:30rpx ; |
|||
} |
|||
.login{ |
|||
width: 100%; |
|||
height: auto; |
|||
position: relative; |
|||
top: -90rpx; |
|||
border-radius: 60rpx 60rpx 0 0; |
|||
background-color: #fff; |
|||
box-sizing: border-box; |
|||
padding:80rpx 60rpx 0; |
|||
} |
|||
.login .input_box { |
|||
display: flex; |
|||
flex-direction: column; |
|||
width: 100%; |
|||
} |
|||
.login input{ |
|||
width: auto; |
|||
height: 93rpx; |
|||
background: #F5F5FA; |
|||
border-radius: 47rpx; |
|||
padding-left: 80rpx; |
|||
} |
|||
.login image { |
|||
width: 46rpx; |
|||
height: 46rpx; |
|||
position: relative; |
|||
left: 20rpx; |
|||
top: 70rpx; |
|||
} |
|||
.login text{ |
|||
display: inline-block; |
|||
font-size: 24rpx; |
|||
font-family: PingFang SC; |
|||
font-weight: 500; |
|||
color: #3E92FF; |
|||
margin-top: 36rpx; |
|||
padding-left: 20rpx; |
|||
} |
|||
.login button{ |
|||
display: block; |
|||
background: linear-gradient(87deg, #81B5FB 0%, #3E92FF 100%); |
|||
border-radius: 43rpx; |
|||
width: auto !important; |
|||
color: #fff; |
|||
font-size: 32rpx; |
|||
font-family: PingFang SC; |
|||
margin: 85rpx 0 0 !important; |
|||
box-sizing: border-box; |
|||
font-weight: 300; |
|||
height: 86rpx; |
|||
line-height: 86rpx; |
|||
padding: 0 !important; |
|||
} |
@ -0,0 +1,18 @@ |
|||
// logs.js
|
|||
const util = require('../../utils/util.js') |
|||
|
|||
Page({ |
|||
data: { |
|||
logs: [] |
|||
}, |
|||
onLoad() { |
|||
this.setData({ |
|||
logs: (wx.getStorageSync('logs') || []).map(log => { |
|||
return { |
|||
date: util.formatTime(new Date(log)), |
|||
timeStamp: log |
|||
} |
|||
}) |
|||
}) |
|||
} |
|||
}) |
@ -0,0 +1,4 @@ |
|||
{ |
|||
"navigationBarTitleText": "查看启动日志", |
|||
"usingComponents": {} |
|||
} |
@ -0,0 +1,6 @@ |
|||
<!--logs.wxml--> |
|||
<view class="container log-list"> |
|||
<block wx:for="{{logs}}" wx:key="timeStamp" wx:for-item="log"> |
|||
<text class="log-item">{{index + 1}}. {{log.date}}</text> |
|||
</block> |
|||
</view> |
@ -0,0 +1,8 @@ |
|||
.log-list { |
|||
display: flex; |
|||
flex-direction: column; |
|||
padding: 40rpx; |
|||
} |
|||
.log-item { |
|||
margin: 10rpx; |
|||
} |
@ -0,0 +1,66 @@ |
|||
// pages/message/message.js
|
|||
Page({ |
|||
|
|||
/** |
|||
* 页面的初始数据 |
|||
*/ |
|||
data: { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 生命周期函数--监听页面加载 |
|||
*/ |
|||
onLoad(options) { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 生命周期函数--监听页面初次渲染完成 |
|||
*/ |
|||
onReady() { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 生命周期函数--监听页面显示 |
|||
*/ |
|||
onShow() { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 生命周期函数--监听页面隐藏 |
|||
*/ |
|||
onHide() { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 生命周期函数--监听页面卸载 |
|||
*/ |
|||
onUnload() { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 页面相关事件处理函数--监听用户下拉动作 |
|||
*/ |
|||
onPullDownRefresh() { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 页面上拉触底事件的处理函数 |
|||
*/ |
|||
onReachBottom() { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 用户点击右上角分享 |
|||
*/ |
|||
onShareAppMessage() { |
|||
|
|||
} |
|||
}) |
@ -0,0 +1,3 @@ |
|||
{ |
|||
"usingComponents": {} |
|||
} |
@ -0,0 +1,2 @@ |
|||
<!--pages/message/message.wxml--> |
|||
<text>pages/message/message.wxml</text> |
@ -0,0 +1 @@ |
|||
/* pages/message/message.wxss */ |
@ -0,0 +1,66 @@ |
|||
// pages/mine/mine.js
|
|||
Page({ |
|||
|
|||
/** |
|||
* 页面的初始数据 |
|||
*/ |
|||
data: { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 生命周期函数--监听页面加载 |
|||
*/ |
|||
onLoad(options) { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 生命周期函数--监听页面初次渲染完成 |
|||
*/ |
|||
onReady() { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 生命周期函数--监听页面显示 |
|||
*/ |
|||
onShow() { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 生命周期函数--监听页面隐藏 |
|||
*/ |
|||
onHide() { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 生命周期函数--监听页面卸载 |
|||
*/ |
|||
onUnload() { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 页面相关事件处理函数--监听用户下拉动作 |
|||
*/ |
|||
onPullDownRefresh() { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 页面上拉触底事件的处理函数 |
|||
*/ |
|||
onReachBottom() { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 用户点击右上角分享 |
|||
*/ |
|||
onShareAppMessage() { |
|||
|
|||
} |
|||
}) |
@ -0,0 +1,4 @@ |
|||
{ |
|||
"usingComponents": {}, |
|||
"navigationBarTitleText": "我的" |
|||
} |
@ -0,0 +1,2 @@ |
|||
<!--pages/mine/mine.wxml--> |
|||
<text>pages/mine/mine.wxml</text> |
@ -0,0 +1 @@ |
|||
/* pages/mine/mine.wxss */ |
@ -0,0 +1,66 @@ |
|||
// pages/work/work.js
|
|||
Page({ |
|||
|
|||
/** |
|||
* 页面的初始数据 |
|||
*/ |
|||
data: { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 生命周期函数--监听页面加载 |
|||
*/ |
|||
onLoad(options) { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 生命周期函数--监听页面初次渲染完成 |
|||
*/ |
|||
onReady() { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 生命周期函数--监听页面显示 |
|||
*/ |
|||
onShow() { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 生命周期函数--监听页面隐藏 |
|||
*/ |
|||
onHide() { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 生命周期函数--监听页面卸载 |
|||
*/ |
|||
onUnload() { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 页面相关事件处理函数--监听用户下拉动作 |
|||
*/ |
|||
onPullDownRefresh() { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 页面上拉触底事件的处理函数 |
|||
*/ |
|||
onReachBottom() { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 用户点击右上角分享 |
|||
*/ |
|||
onShareAppMessage() { |
|||
|
|||
} |
|||
}) |
@ -0,0 +1,4 @@ |
|||
{ |
|||
"usingComponents": {}, |
|||
"navigationBarTitleText": "工作" |
|||
} |
@ -0,0 +1,2 @@ |
|||
<!--pages/work/work.wxml--> |
|||
<text>pages/work/work.wxml</text> |
@ -0,0 +1 @@ |
|||
/* pages/work/work.wxss */ |
@ -0,0 +1,52 @@ |
|||
{ |
|||
"description": "项目配置文件", |
|||
"packOptions": { |
|||
"ignore": [], |
|||
"include": [] |
|||
}, |
|||
"setting": { |
|||
"bundle": false, |
|||
"userConfirmedBundleSwitch": false, |
|||
"urlCheck": true, |
|||
"scopeDataCheck": false, |
|||
"coverView": true, |
|||
"es6": true, |
|||
"postcss": true, |
|||
"compileHotReLoad": false, |
|||
"lazyloadPlaceholderEnable": false, |
|||
"preloadBackgroundData": false, |
|||
"minified": true, |
|||
"autoAudits": false, |
|||
"newFeature": false, |
|||
"uglifyFileName": false, |
|||
"uploadWithSourceMap": true, |
|||
"useIsolateContext": true, |
|||
"nodeModules": false, |
|||
"enhance": true, |
|||
"useMultiFrameRuntime": true, |
|||
"useApiHook": true, |
|||
"useApiHostProcess": true, |
|||
"showShadowRootInWxmlPanel": true, |
|||
"packNpmManually": false, |
|||
"enableEngineNative": false, |
|||
"packNpmRelationList": [], |
|||
"minifyWXSS": true, |
|||
"showES6CompileOption": false, |
|||
"minifyWXML": true, |
|||
"babelSetting": { |
|||
"ignore": [], |
|||
"disablePlugins": [], |
|||
"outputPath": "" |
|||
}, |
|||
"condition": false |
|||
}, |
|||
"compileType": "miniprogram", |
|||
"libVersion": "2.19.4", |
|||
"appid": "wxaf87b420b87e2d79", |
|||
"projectname": "miniprogram-92", |
|||
"condition": {}, |
|||
"editorSetting": { |
|||
"tabIndent": "insertSpaces", |
|||
"tabSize": 4 |
|||
} |
|||
} |
@ -0,0 +1,21 @@ |
|||
{ |
|||
"description": "项目私有配置文件。此文件中的内容将覆盖 project.config.json 中的相同字段。项目的改动优先同步到此文件中。详见文档:https://developers.weixin.qq.com/miniprogram/dev/devtools/projectconfig.html", |
|||
"projectname": "epmet-work-minniprogram", |
|||
"setting": { |
|||
"compileHotReLoad": true, |
|||
"urlCheck": false |
|||
}, |
|||
"condition": { |
|||
"miniprogram": { |
|||
"list": [ |
|||
{ |
|||
"name": "登录", |
|||
"pathName": "pages/login/login", |
|||
"query": "", |
|||
"launchMode": "default", |
|||
"scene": null |
|||
} |
|||
] |
|||
} |
|||
} |
|||
} |
@ -0,0 +1,7 @@ |
|||
{ |
|||
"desc": "关于本文件的更多信息,请参考文档 https://developers.weixin.qq.com/miniprogram/dev/framework/sitemap.html", |
|||
"rules": [{ |
|||
"action": "allow", |
|||
"page": "*" |
|||
}] |
|||
} |
@ -0,0 +1,66 @@ |
|||
// subpages/addhouse/pages/addhouse/addhouse.js
|
|||
Page({ |
|||
|
|||
/** |
|||
* 页面的初始数据 |
|||
*/ |
|||
data: { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 生命周期函数--监听页面加载 |
|||
*/ |
|||
onLoad(options) { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 生命周期函数--监听页面初次渲染完成 |
|||
*/ |
|||
onReady() { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 生命周期函数--监听页面显示 |
|||
*/ |
|||
onShow() { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 生命周期函数--监听页面隐藏 |
|||
*/ |
|||
onHide() { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 生命周期函数--监听页面卸载 |
|||
*/ |
|||
onUnload() { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 页面相关事件处理函数--监听用户下拉动作 |
|||
*/ |
|||
onPullDownRefresh() { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 页面上拉触底事件的处理函数 |
|||
*/ |
|||
onReachBottom() { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 用户点击右上角分享 |
|||
*/ |
|||
onShareAppMessage() { |
|||
|
|||
} |
|||
}) |
@ -0,0 +1,3 @@ |
|||
{ |
|||
"usingComponents": {} |
|||
} |
@ -0,0 +1,2 @@ |
|||
<!--subpages/addhouse/pages/addhouse/addhouse.wxml--> |
|||
<text>subpages/addhouse/pages/addhouse/addhouse.wxml</text> |
@ -0,0 +1 @@ |
|||
/* subpages/addhouse/pages/addhouse/addhouse.wxss */ |
@ -0,0 +1,15 @@ |
|||
var fly = require('./request.js') |
|||
module.exports = { |
|||
getInvitation:getInvitation, |
|||
userLoginlog:userLoginlog, |
|||
} |
|||
|
|||
function getInvitation(id){ |
|||
return fly.get(`app-user/user/ma/v3/getInvitation/${id}`) |
|||
} |
|||
/** |
|||
*小程序用户登录日志 |
|||
*/ |
|||
function userLoginlog (para) { |
|||
return fly.post('auth/gov/loginbypassword', para) |
|||
} |
@ -0,0 +1,34 @@ |
|||
export default function checkVersion() { |
|||
return new Promise((resolve, reject) => { |
|||
if (wx.canIUse('getUpdateManager')) { |
|||
const updateManager = wx.getUpdateManager() |
|||
updateManager.onCheckForUpdate(res => { |
|||
if (res.hasUpdate) { |
|||
updateManager.onUpdateReady(() => { |
|||
wx.showModal({ |
|||
title: '更新提示', |
|||
content: '新版本已经准备好, 是否重启应用', |
|||
success (successRes) { |
|||
if (successRes.confirm) { |
|||
updateManager.applyUpdate() |
|||
} |
|||
} |
|||
}) |
|||
resolve(true) |
|||
}) |
|||
updateManager.onUpdateFailed(() => { |
|||
wx.showModal({ |
|||
title: '更新提示', |
|||
content: '新版本已经上线了,请您删除当前小程序,重新搜索打开~' |
|||
}) |
|||
reject(false) |
|||
}) |
|||
} else { |
|||
resolve(true) |
|||
} |
|||
}) |
|||
} else { |
|||
reject(false) |
|||
} |
|||
}) |
|||
} |
@ -0,0 +1,24 @@ |
|||
module.exports = { |
|||
BASEURL: BASEURL, |
|||
WEBROOT: WEBROOT, |
|||
Token: getToken, |
|||
userId: "" |
|||
}; |
|||
|
|||
function BASEURL() { |
|||
// return 'https://epdc-shibei.elinkservice.cn/epdc-api/api/' // 正式环境
|
|||
// return 'http://10.10.10.66:9094/epdc-api/api/' // 王童本地环境地址
|
|||
return 'http://192.168.1.144/api/' // 测试环境
|
|||
} |
|||
|
|||
function WEBROOT() { |
|||
// return 'https://epdc-shibei.elinkservice.cn/epidemic/appraise.html#/cadre-list' // 街道干部评价h5地址
|
|||
// return 'http://lihenian.gitee.io/epidemic/appraise.html#/cadre-list' // 街道干部评价h5地址测试环境
|
|||
// https://lyljdgs.qingdaoshibei.cn/app/mobileapp/qlsb/index.aspx
|
|||
return 'https://lyljdgs.qingdaoshibei.cn/app/mobileapp/qlsb/index.aspx'// 2020-05-20
|
|||
} |
|||
|
|||
function getToken() { |
|||
return wx.getStorageSync("token"); |
|||
} |
|||
|
@ -0,0 +1,68 @@ |
|||
var global = require('./config.js') |
|||
const request = function (url, options) { |
|||
let token = wx.getStorageSync('token') |
|||
if (token==undefined || token==null) { |
|||
token = '' |
|||
} |
|||
return new Promise((resolve, reject) => { |
|||
wx.request({ |
|||
url: `${global.BASEURL()}${url}`, |
|||
method: options.method, |
|||
data: options.method === 'GET' ? options.data : JSON.stringify(options.data), |
|||
header: { |
|||
'Content-Type': 'application/json; charset=UTF-8', |
|||
'Authorization': token |
|||
}, |
|||
success (response) { |
|||
if (response.statusCode === 200) { |
|||
if(response.data.code===0){ |
|||
resolve(response.data) |
|||
}else{ |
|||
let errmsg = response.data.msg |
|||
if(errmsg==undefined || errmsg=='undefined' ){ |
|||
errmsg = '未返回错误信息' |
|||
} |
|||
wx.showToast({ |
|||
title: errmsg, |
|||
icon: 'none', |
|||
duration: 3000 |
|||
}) |
|||
reject(response.data) |
|||
} |
|||
} else { |
|||
wx.showToast({ |
|||
title: '网络问题,请稍后再试。', |
|||
icon: 'none', |
|||
duration: 2000 |
|||
}) |
|||
reject(false) |
|||
} |
|||
}, |
|||
fail (error) { |
|||
wx.showToast({ |
|||
title: '网络问题,请稍后再试。', |
|||
icon: 'none', |
|||
duration: 2000 |
|||
}) |
|||
reject(error.data) |
|||
} |
|||
}) |
|||
}) |
|||
} |
|||
function get(url, options = {}) { |
|||
return request(url, { method: 'GET', data: options }) |
|||
} |
|||
|
|||
function post(url, options = {}) { |
|||
return request(url, { method: 'POST', data: options }) |
|||
} |
|||
|
|||
function put(url, options = {}) { |
|||
return request(url, { method: 'PUT', data: options }) |
|||
} |
|||
|
|||
module.exports = { |
|||
get: get, |
|||
post: post, |
|||
put: put |
|||
} |
@ -0,0 +1,26 @@ |
|||
const formatTime = date => { |
|||
const year = date.getFullYear() |
|||
const month = date.getMonth() + 1 |
|||
const day = date.getDate() |
|||
const hour = date.getHours() |
|||
const minute = date.getMinutes() |
|||
const second = date.getSeconds() |
|||
|
|||
return [year, month, day].map(formatNumber).join('/') + ' ' + [hour, minute, second].map(formatNumber).join(':') |
|||
} |
|||
|
|||
const formatNumber = n => { |
|||
n = n.toString() |
|||
return n[1] ? n : '0' + n |
|||
} |
|||
|
|||
const formatRichText = html => { |
|||
let newContent= html.replace(/\<img/gi, '<img style="width:100%;height:auto;display:block;"'); |
|||
return newContent |
|||
} |
|||
|
|||
module.exports = { |
|||
formatTime: formatTime, |
|||
formatRichText: formatRichText |
|||
} |
|||
|