chat girldetail 图集制作

This commit is contained in:
2025-09-19 15:19:59 +08:00
parent fb0a9abcce
commit 6ed9f82a6e
41 changed files with 1607 additions and 1508 deletions
+34
View File
@@ -0,0 +1,34 @@
//app.js
App({
onLaunch: function () {
// show localstorage
let logs = wx.getStorageSync('logs') || []
logs.unshift(Date.now())
wx.setStorageSync('logs', logs)
// login
wx.login({
success: res => {
// get custom login info res
}
})
// get user settings
wx.getSetting({
success: res => {
if (res.authSetting['scope.userInfo']) {
// Already authorized, you can directly call getUserInfo to get the avatar nickname without popping up
wx.getUserInfo({
success: res => {
// get custom user info res
this.globalData.userInfo = res.userInfo;
}
})
}
}
})
},
globalData: {
userInfo: null
}
})
+13
View File
@@ -0,0 +1,13 @@
{
"pages": [
"pages/index/index",
"pages/logs/logs"
],
"style": "v2",
"window": {
"backgroundTextStyle": "light",
"navigationBarBackgroundColor": "#fff",
"navigationBarTitleText": "TCSAS Mini Program",
"navigationBarTextStyle": "black"
}
}
+9
View File
@@ -0,0 +1,9 @@
.container {
height: 100%;
display: flex;
flex-direction: column;
align-items: center;
justify-content: space-between;
padding: 200rpx 0;
box-sizing: border-box;
}
+53
View File
@@ -0,0 +1,53 @@
//index.js
//get application instance
const { defaultIcon } = require('../../utils/icon');
const app = getApp()
Page({
data: {
motto: 'Hello World',
userInfo: {},
hasUserInfo: false,
canIUse: wx.canIUse('button.open-type.getUserInfo')
},
// event handler function
bindViewTap: function () {
wx.navigateTo({
url: '../logs/logs'
})
},
onLoad: function () {
if (app.globalData.userInfo) {
this.setData({
userInfo: app.globalData.userInfo,
hasUserInfo: true
})
} else if (this.data.canIUse) {
// do someting
} else {
// There is no compatibility processing for open-type=getUserInfo version
wx.getUserInfo({
success: res => {
app.globalData.userInfo = res.userInfo
this.setData({
userInfo: res.userInfo,
hasUserInfo: true
})
}
})
}
},
getUserInfo: function (e) {
console.log('getUserInfo ----> ', e);
app.globalData.userInfo = e.detail.userInfo || "";
const userInfo = e.detail.userInfo || {
avatarUrl: defaultIcon,
nickName: 'userNickName'
}
this.setData({
userInfo: userInfo,
hasUserInfo: true
})
}
})
+3
View File
@@ -0,0 +1,3 @@
{
"usingComponents": {}
}
+1
View File
@@ -0,0 +1 @@
<web-view src="http://120.25.215.205:39002/"></web-view>
+20
View File
@@ -0,0 +1,20 @@
.userinfo {
display: flex;
flex-direction: column;
align-items: center;
}
.userinfo-avatar {
width: 128rpx;
height: 128rpx;
margin: 20rpx;
border-radius: 50%;
}
.userinfo-nickname {
color: #aaa;
}
.usermotto {
margin-top: 200px;
}
+15
View File
@@ -0,0 +1,15 @@
//logs.js
const util = require('../../utils/util.js')
Page({
data: {
logs: []
},
onLoad: function () {
this.setData({
logs: (wx.getStorageSync('logs') || []).map(log => {
return util.formatTime(new Date(log))
})
})
}
})
+4
View File
@@ -0,0 +1,4 @@
{
"navigationBarTitleText": "Logs",
"usingComponents": {}
}
+5
View File
@@ -0,0 +1,5 @@
<view class="container log-list">
<block wx:for="{{logs}}" wx:for-item="log" wx:key="*this">
<text class="log-item">{{index + 1}}. {{log}}</text>
</block>
</view>
+9
View File
@@ -0,0 +1,9 @@
.log-list {
display: flex;
flex-direction: column;
padding: 40rpx;
}
.log-item {
margin: 10rpx;
}
+47
View File
@@ -0,0 +1,47 @@
{
"projectid": "mp0ygqvghc940ppb_AIphrodite",
"setting": {
"urlCheck": true,
"es6": true,
"postcss": true,
"minified": true,
"newFeature": true,
"autoAudits": false,
"nodeModules": true,
"uploadWithSourceMap": true,
"uglifyFileName": true,
"remoteDebugLogEnable": true,
"prefetch": false
},
"LuffaToolsLibVersion": "2.2.13",
"compileType": "miniprogram",
"createTime": 1758263984023,
"accessTime": 1758263984023,
"packOptions": {
"ignore": []
},
"debugOptions": {
"hidedInDevtools": []
},
"LuffaToolsappid": "mp0ygqvghc940ppb",
"projectname": "AIphrodite",
"scripts": {},
"condition": {
"search": {
"current": -1,
"list": []
},
"conversation": {
"current": -1,
"list": []
},
"game": {
"currentL": -1,
"list": []
},
"miniprogram": {
"current": -1,
"list": []
}
}
}
+5
View File
@@ -0,0 +1,5 @@
const defaultIcon = 'data:image/png;base64,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'
module.exports = {
defaultIcon
}
+19
View File
@@ -0,0 +1,19 @@
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
}
module.exports = {
formatTime: formatTime
}