commit 6e8d9221c898c74b1371652c00f44c5d14decbbb Author: unknown Date: Sat Jun 29 21:35:52 2024 +0800 Initial Commit diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..14ea590 --- /dev/null +++ b/.gitignore @@ -0,0 +1,14 @@ +# Windows +[Dd]esktop.ini +Thumbs.db +$RECYCLE.BIN/ + +# macOS +.DS_Store +.fseventsd +.Spotlight-V100 +.TemporaryItems +.Trashes + +# Node.js +node_modules/ diff --git a/202212840404 .mp4 b/202212840404 .mp4 new file mode 100644 index 0000000..b68ab4e Binary files /dev/null and b/202212840404 .mp4 differ diff --git a/README.md b/README.md new file mode 100644 index 0000000..e69de29 diff --git a/app.js b/app.js new file mode 100644 index 0000000..7067e3b --- /dev/null +++ b/app.js @@ -0,0 +1,57 @@ +//app.js +var moviesInfo = require('data/movieInfo.js'); +var talksInfo = require('data/talkInfo.js'); +App({ + globalData: { + moviearray:[], + talkarray:[], + moviehistoryarray:[], + talkhistoryarray:[], + }, + MovieRefresh:function(options){ + var postlist=moviesInfo.postList + var array=new Array() + console.log(postlist) + var postsCollected = wx.getStorageSync("posts_collected"); + for(var i=0;i数学达人 + 文章 + + + + + \ No newline at end of file diff --git a/pages/favorite/favorite.wxss b/pages/favorite/favorite.wxss new file mode 100644 index 0000000..40b6894 --- /dev/null +++ b/pages/favorite/favorite.wxss @@ -0,0 +1,32 @@ +@import '/pages/popular/popular.wxss'; +@import '/pages/talking/talking.wxss'; +.tab-header { + box-sizing: border-box; + position: fixed; + top: 0; + left: 0; + display: table; + width: 750rpx; + height: 80rpx; + background-color: #fff; + border-bottom: 1px solid #eee; + /* margin-bottom: 80prx; */ +} + +.tab-header-item { + display: table-cell; + height: 80rpx; + line-height: 80rpx; + text-align: center; +} + +.tab-header-item:active { + background-color: #f8f8f8; +} + +.tab-header-active { + border-bottom: 4rpx solid #47a86c; +} +.movie-list,.middle{ + margin-top: 80rpx; +} \ No newline at end of file diff --git a/pages/history/history.js b/pages/history/history.js new file mode 100644 index 0000000..1756a66 --- /dev/null +++ b/pages/history/history.js @@ -0,0 +1,39 @@ +// pages/favorite/favorite.js +var app = getApp() +Page({ + data: { + moviearray:[], + talkarray:[], + show: 'movie_favorite', + }, + onLoad: function (options) { + app.MovieHistoryRefresh() + app.TalkHistoryRefresh() + // console.log(app.globalData.moviearray) + this.setData({ + moviearray: app.globalData.moviehistoryarray, + talkarray: app.globalData.talkhistoryarray + }) + }, + onPullDownRefresh: function () { + this.onLoad() + }, + jumpBtnMovie:function(options){ + var postId = options.currentTarget.dataset.postid; + wx.navigateTo({ + url: '/pages/moviemore/moviemore?id='+postId, + }) + }, + jumpBtnTalk: function (options) { + var postId = options.currentTarget.dataset.postid; + wx.navigateTo({ + url: '/pages/talkingmore/talkingmore?id=' + postId + }) + }, + changeViewType: function(e) { + var data = e.currentTarget.dataset + this.setData({ + show: data.type, + }) + } +}) \ No newline at end of file diff --git a/pages/history/history.json b/pages/history/history.json new file mode 100644 index 0000000..4ff71e2 --- /dev/null +++ b/pages/history/history.json @@ -0,0 +1,3 @@ +{ + "navigationBarTitleText": "历史记录" +} \ No newline at end of file diff --git a/pages/history/history.wxml b/pages/history/history.wxml new file mode 100644 index 0000000..8664279 --- /dev/null +++ b/pages/history/history.wxml @@ -0,0 +1,43 @@ + + 数学达人 + 文章 + + + + + \ No newline at end of file diff --git a/pages/history/history.wxss b/pages/history/history.wxss new file mode 100644 index 0000000..40b6894 --- /dev/null +++ b/pages/history/history.wxss @@ -0,0 +1,32 @@ +@import '/pages/popular/popular.wxss'; +@import '/pages/talking/talking.wxss'; +.tab-header { + box-sizing: border-box; + position: fixed; + top: 0; + left: 0; + display: table; + width: 750rpx; + height: 80rpx; + background-color: #fff; + border-bottom: 1px solid #eee; + /* margin-bottom: 80prx; */ +} + +.tab-header-item { + display: table-cell; + height: 80rpx; + line-height: 80rpx; + text-align: center; +} + +.tab-header-item:active { + background-color: #f8f8f8; +} + +.tab-header-active { + border-bottom: 4rpx solid #47a86c; +} +.movie-list,.middle{ + margin-top: 80rpx; +} \ No newline at end of file diff --git a/pages/ii/ii.js b/pages/ii/ii.js new file mode 100644 index 0000000..c193efe --- /dev/null +++ b/pages/ii/ii.js @@ -0,0 +1,67 @@ +Page({ + data: { + list: [{ + id: '1001', + title: '中国古代数学科普', + videoUrl: '/static/img/123.mp4' + }, + { + id: '1002', + title: '中国古代数学科普', + videoUrl: '/static/img/123.mp4' + }, + { + id: '1003', + title: '当中国古代数学科普', + videoUrl: '/static/img/123.mp4' + }, + { + id: '1004', + title: '当中国古代数学科普', + videoUrl: '/static/img/123.mp4' + } + ] + }, + + // 创建视频上下文 + videoCtx: wx.createVideoContext('myVideo'), + + playVideo: function(e) { + // 停止之前正在播放的视频 + this.videoCtx.stop(); + // 更新视频地址 + this.setData({ + src: e.currentTarget.dataset.url + }); + // 播放新的视频 + this.videoCtx.play(); + }, + + getDanmu: function(e) { + this.setData({ + danmuTxt: e.detail.value + }); + }, + + /** + * 发送弹幕 + */ + sendDanmu: function(e) { + let text = this.data.danmuTxt; + this.videoCtx.sendDanmu({ + text: text, + color: this.getRandomColor() // 使用 this.getRandomColor() 调用函数 + }); + }, + + // 定义 getRandomColor 函数 + getRandomColor: function() { + let rgb = []; + for (let i = 0; i < 3; i++) { + let color = Math.floor(Math.random() * 256).toString(16); + color = color.length == 1 ? '0' + color : color; + rgb.push(color); + } + return '#' + rgb.join(''); + } +}); diff --git a/pages/ii/ii.json b/pages/ii/ii.json new file mode 100644 index 0000000..8835af0 --- /dev/null +++ b/pages/ii/ii.json @@ -0,0 +1,3 @@ +{ + "usingComponents": {} +} \ No newline at end of file diff --git a/pages/ii/ii.wxml b/pages/ii/ii.wxml new file mode 100644 index 0000000..5fc53c5 --- /dev/null +++ b/pages/ii/ii.wxml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + {{item.title}} + + \ No newline at end of file diff --git a/pages/ii/ii.wxss b/pages/ii/ii.wxss new file mode 100644 index 0000000..930c394 --- /dev/null +++ b/pages/ii/ii.wxss @@ -0,0 +1,49 @@ +/* pages/ii/ii.wxss */ +video{ + width:100%; /*视频组件宽度为100%*/ +} +.danmuArea { + display: flex; /*flex模型布局*/ + flex-direction:row; /*水平方向排列*/ +} + +/*2-2文本输入框样式*/ +input { + border:1rpx solid #08cfdd; /*1rpx宽的实线棕色边框*/ + flex-grow:1; /*扩张多余空间宽度*/ + height:90rpx; /*高度*/ +} + +/*2-3按钮样式*/ +button { + color:rgb(233, 240, 239); /*字体颜色*/ + background-color:#4f9986; /*背景颜色*/ +} +.videoList { + width:100%; /*宽度*/ + min-height:400rpx; /*最小高度*/ +} + +/*3-2单行列表区域样式*/ +.videoBar { + width:95%; /*宽度*/ + display: flex; /*flex模型布局*/ + flex-direction:row; /*水平方向布局*/ + border-bottom:1rpx solid #4f9986; /*1rpx宽的实线棕色边框*/ + margin:10rpx; /*外边距*/ +} + +/*3-3播放图标样式*/ +image { + width:70rpx; /*宽度*/ + height:70rpx; /*高度*/ + margin: 20rpx; /*外边距*/ +} + +/*3-4文本标题样式*/ +text { + font-size:30rpx; /*字体大小*/ + color: #4f9986; /*字体颜色为棕色*/ + margin: 20rpx; /*外边距*/ + flex-grow:1; /*扩张多余空间宽度*/ +} \ No newline at end of file diff --git a/pages/images/ciwei.png b/pages/images/ciwei.png new file mode 100644 index 0000000..fc9e264 Binary files /dev/null and b/pages/images/ciwei.png differ diff --git a/pages/images/ciwei_hl.png b/pages/images/ciwei_hl.png new file mode 100644 index 0000000..f9c6020 Binary files /dev/null and b/pages/images/ciwei_hl.png differ diff --git a/pages/images/collection-anti.png b/pages/images/collection-anti.png new file mode 100644 index 0000000..ae9a0db Binary files /dev/null and b/pages/images/collection-anti.png differ diff --git a/pages/images/collection.png b/pages/images/collection.png new file mode 100644 index 0000000..ceba2ca Binary files /dev/null and b/pages/images/collection.png differ diff --git a/pages/images/green_tri.png b/pages/images/green_tri.png new file mode 100644 index 0000000..a83f974 Binary files /dev/null and b/pages/images/green_tri.png differ diff --git a/pages/images/my_active_icon.png b/pages/images/my_active_icon.png new file mode 100644 index 0000000..3e26567 Binary files /dev/null and b/pages/images/my_active_icon.png differ diff --git a/pages/images/my_icon.png b/pages/images/my_icon.png new file mode 100644 index 0000000..eb72127 Binary files /dev/null and b/pages/images/my_icon.png differ diff --git a/pages/images/popular_active_icon.png b/pages/images/popular_active_icon.png new file mode 100644 index 0000000..43e7580 Binary files /dev/null and b/pages/images/popular_active_icon.png differ diff --git a/pages/images/popular_icon.png b/pages/images/popular_icon.png new file mode 100644 index 0000000..a77c770 Binary files /dev/null and b/pages/images/popular_icon.png differ diff --git a/pages/images/search_active_icon.png b/pages/images/search_active_icon.png new file mode 100644 index 0000000..ecae6e2 Binary files /dev/null and b/pages/images/search_active_icon.png differ diff --git a/pages/images/search_icon.png b/pages/images/search_icon.png new file mode 100644 index 0000000..a730660 Binary files /dev/null and b/pages/images/search_icon.png differ diff --git a/pages/images/share-anti.png b/pages/images/share-anti.png new file mode 100644 index 0000000..ff03d0f Binary files /dev/null and b/pages/images/share-anti.png differ diff --git a/pages/images/share.png b/pages/images/share.png new file mode 100644 index 0000000..8b232ca Binary files /dev/null and b/pages/images/share.png differ diff --git a/pages/moviemore/moviemore.js b/pages/moviemore/moviemore.js new file mode 100644 index 0000000..6ef9cf6 --- /dev/null +++ b/pages/moviemore/moviemore.js @@ -0,0 +1,82 @@ +// pages/moviemore/moviemore.js +var moviesInfo = require('../../data/movieInfo.js'); +var app = getApp() +Page({ + data: { + collected: false, + history:[] + }, + onLoad: function (options) { + var postId = options.id; + this.data.currentPostId = postId; + var movieInfo = moviesInfo.postList[postId]; + // console.log(postId) + this.setData({ + movieInfo: movieInfo + }) + // 收藏 + var postsCollected = wx.getStorageSync("posts_collected"); + console.log(postsCollected) + if (postsCollected) { + var postCollected = postsCollected[postId] + this.setData({ + collected: postCollected + }) + + } else { + var postsCollected = {}; + postsCollected[postId] = false; + wx.setStorageSync("posts_collected", postsCollected) + } +// 历史 + var historyslist = wx.getStorageSync("historys_list"); + if(!historyslist){ + var history=this.data.history; + wx.setStorageSync('historys_list', history); + } + for(var i=0;i + + + + + {{movieInfo.title}} + 作者:{{movieInfo.director}} + 出版社:{{movieInfo.actor}} + 内容评分: + + 暂无评分 + + {{movieInfo.score}}分 + + 发行时间:{{movieInfo.year}}年 + + 收藏 + + + + {{movieInfo.saw_count}} + 看过 + + + {{movieInfo.want_count}} + 已收藏 + + + {{movieInfo.ratings_count}} + 浏览量 + + + + 简介 + {{movieInfo.content}} + \ No newline at end of file diff --git a/pages/moviemore/moviemore.wxss b/pages/moviemore/moviemore.wxss new file mode 100644 index 0000000..244b2c6 --- /dev/null +++ b/pages/moviemore/moviemore.wxss @@ -0,0 +1,140 @@ +/* pages/moviemore/moviemore.wxss */ +.top { + position: relative; + width: 100%; + height: 600rpx; + display: flex; + justify-content: center; + align-content: center; + overflow: hidden; +} + +.top:before { + content: ''; + display: block; + position: absolute; + left: 0; + top: 0; + z-index: -1; + width: 100%; + height: 600rpx; +} + +.top-background { + position: absolute; + z-index: -2; + left: 0; + top: 0; + width: 100%; + height: 600rpx; + background-size: cover; + background-position: center; + filter: blur(30rpx); + transform: scale(1.2); +} +.top-background-cover { + z-index: 9999; + width: 300rpx; + height: 420rpx; + margin-top: 80rpx; + border-radius: 8rpx; + box-shadow: 0 30rpx 150rpx rgba(255, 255, 255, .3) +} +.top-favorite { + box-sizing: border-box; + position: absolute; + z-index: 99; + bottom: 30rpx; + left: 120rpx; + width: 160rpx; + padding: 10rpx 30rpx; + padding-left: 60rpx; + font-size: 32rpx; + line-height: 1; + border-radius: 30rpx; + border: 1px solid #fff; + background-position: 20rpx center; + background-repeat: no-repeat; + background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAC7klEQVRoQ9WagXHUMBBF91dAUgFQAVABXAWQCoAKCBUQKiBXAVwFIRWQVEBSAVwFHBUs849VJtzZ1kpac7ZmPHMzZ0n/SdZfeWXICEVVj0Tkk4i8EZGNiHwVkfcA+Du0ILQ1a0xVv4vI0522rwAsovsLB1BVjvrnHqFvAXyJhBgD4IeIPOoReQPg2WQBMqOfdC8AXEVBhM6Aqn4TkRcZcaFrIQxAVSmcAJ4SNguRAJ7RT3ArAFzszSUEQFVpmbTOkvIYwM+SCl33RgHQGl8XigmZhWYAVaVl0jprynFrdI4AqBn9BPsRwFkNearTBGB7nl8NArg34lqo3iNVAZjwJyLySkROGwBY9ZybPQDXNe0MApi7PLDgxGedFx2Hu80xCmfixi7+ZsReD7nVHYCqvjRxDEgUuLubHENwSZsEo+1uAQFcsjLscWAQmprgHBxBFgRocZFcJ2P/vyIAXWSsZ3psgA0BuFi4UOdY1gSgjb2bo3oRWaZFTLuir8+p3NLetzZqTjQniL/igc39OMCFPAeINS0/bT/+icQWeQkx1UX920aeMWBb9rYSE4bYE98JYGuCUXlKM9EpvhdgYhC94gcBJgIxKD4LcGCIrHgXwD2I0qxDS1B0iXcDGIS2KCqtC8D1tui6qTLvU6p5935X3sgLUJI2bBWe6rvSj14Apj4+RClztuNKuXgBDvHW5srceQEYlZ87Ry7qtmsAuVT9/l6oq3dV/a8OZBo2AI5zo5GdgcbcZ67/3P/Z3KkH4BAO5HYiD8AhHCgB8GyZ7+y9xQPQ4kDcErDUviAtAQzmXj0ANQ5E4Ry5NHoUwasUJOtEHoDSxNdSRM52U+aWOCBQyUlO1ok8AF4LXZnwwXMvczWuKxdIblPnAaCghwPriHn9UwB3L9o5b7TdLd2NIEMBkqn1vlP/bTceAB5iXHSIonA+Kk2n7na+zEerK7F2AoBfutS7kI0WITha7IRJpfPojzbsMwUu9NQHB2dQPLX9AbQjJU2PHjqcAAAAAElFTkSuQmCC); + background-size: 32rpx; + color: #fff; + transition: left .3s, color .3s, background-image .3s; +} + +.top-favorite-active { + left: 100rpx; + width: 190rpx; + background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAADk0lEQVRoQ9Wa0VLaQBSGzwmNU00YZUbjZfFO6IX0CYpPUPsEtU9QfIKmT1B8guoT1D6B+ATFiwJ3wqWpM9ABsVNrTuckwakI2U2yKWkuyWbP/+1m/z17AkIKF/WLa9e3Kx8BYJ8ABghwYujjAyx0B6rDoeoOub+RU/4KAJWHfVPDtNq7quMpBxg52/sA2qfZQt23ptU5UgmhHuCydAGIxTkim6bVepFZgPDR92UTurv5jU5DFYTSGRg5pVMArIaLU7sWlAEMv29XkbRTmZFVOQvKAORGf4JHx6bV3peBFbVRAjBynlcAiK1T+srp7tZyodOVfmBOQ0UApSMAfBNNjJpZSAxw098u3t1qF9HE+60NfVxIujsnBhg5cUY/sFSCD/nNlh0HfvJMIoAg5+nHFcB5kqmPt5LMQiwAFv7z99OdO8I9AKzFBQjmoZ5DOlne6JzF6ScUgN0lh3erLmhVIigCUJEAKwiwFieY6Bk/c6UmADQRcaCB24An0Atzq3uA66vyKyCoEFEVAFngVDYpCp/6/SYRdTUNm4DQNNZbXzgiBu8x76BZEywakaahj3cxiYuIIqR/n45x6JT7ab3TaQN4a2bolAYIuJp2sFT6J+rxK1QHwHepBEi9UzqcLGI+YOykHk9tgHNDH1c9Gw2c6H+C8MUXulzxCPZDvxSSfQiinrF0U5mkHw92Yt55CdxGVhc1Af1A0Kqm9Y13a+96lEpkFWKW+JkA/GPWIOaJnwuQJYgw8aEAWYAQiRcCLBJCRrwUwAQiatUhyZ4lK14awIcoUxJRUZ81rZbUaVGqUZy6T1TB0+1l60ZSAFHKhkmF32cGkkVgOYDLso0I71WJk+mHJEsuUgCLObXJVe6kAIZOifOjlzIjp6oNAZ3lrbagVD8jF5ol4F87EGvg42LeahVEAyKcgSS1T1Fw0X2Z2qkQYBEOFMWJxAALcKD7mUE6MDfa9bCZEgIkcSBOCfztPm7Vgw5Nqx1aexUCxHEgTzhh3Vwae6M3+rVSA6RaVBAZJ5IAiFr4okNDv7GnS+Z+4WCZSzjSX3JknEgIIG+hdJzTyRZ99/JdDW1ZEFFSJwa4LHUB8dm8hcTTjKDV/j5oi+yR77O7AaEdukES9czN9ryv/l4YIcD1VWmPXPw8LYqFA5Kd9Kt7YNO8Vh4V1lCj18Z6+ySRC/HDAQR/y+Ig5wBuXfWfNoK/KbDjeDFQI1sknrX9Ae1as5bu7R6bAAAAAElFTkSuQmCC); + color: #f4ea2a; + border: 1px solid #f4ea2a; +} + +.top-favorite-active::before { + content: '已' +} + +.top-content { + z-index: 2; + width: 320rpx; + margin-top: 80rpx; + margin-left: 40rpx; + color: #fff; +} + +.top-title { + margin-bottom: 30rpx; + font-size: 42rpx; +} + +.top-txt { + margin-bottom: 18rpx; + color: #eee; +} +/* 华丽的分割线 */ +.middle { + display: flex; + height: 150rpx; + justify-content: space-around; + align-items: center; + border-bottom: 1px solid #f4f4f4; +} + +.middle-item { + width: 33.33%; + text-align: center; + border-left: 1px solid #eee; +} + +.middle-item:first-child { + border-left: none; +} + +.middle-item-num { + font-size: 40rpx; + font-weight: 100; + color: #444; +} + +.middle-item-title { + color: #999; +} +/* 华丽的分割线 */ +.bottom { + padding: 0 40rpx 40rpx; +} + +.bottom-title { + padding-left: 20rpx; + margin-top: 40rpx; + margin-bottom: 20rpx; + font-size: 32rpx; + font-weight: bold; + color: #444; + border-left: 10rpx solid #47a86c; +} + +.bottom-content { + text-align: justify; + line-height: 1.5; + color: #666; +} \ No newline at end of file diff --git a/pages/my/my.js b/pages/my/my.js new file mode 100644 index 0000000..e05a1e9 --- /dev/null +++ b/pages/my/my.js @@ -0,0 +1,85 @@ +const app = getApp() +Page({ + data:{ + userInfo: {}, + hasUserInfo: false, + canIUse: wx.canIUse('button.open-type.getUserInfo'), + gridList: [ + {enName:'favorite', zhName:'收藏'}, + {enName:'history', zhName:'浏览记录'}, + {enName:'photo', zhName:'相册'}, + + ], + skin: '' + }, + onLoad: function () { + if (app.globalData.userInfo) { + this.setData({ + userInfo: app.globalData.userInfo, + hasUserInfo: true + }) + } else if (this.data.canIUse){ + // 由于 getUserInfo 是网络请求,可能会在 Page.onLoad 之后才返回 + // 所以此处加入 callback 以防止这种情况 + app.userInfoReadyCallback = res => { + this.setData({ + userInfo: res.userInfo, + hasUserInfo: true + }) + } + } else { + // 在没有 open-type=getUserInfo 版本的兼容处理 + wx.getUserInfo({ + success: res => { + app.globalData.userInfo = res.userInfo + this.setData({ + userInfo: res.userInfo, + hasUserInfo: true + }) + } + }) + } + }, + + getUserInfo: function(e) { + console.log(e) + app.globalData.userInfo = e.detail.userInfo + this.setData({ + userInfo: e.detail.userInfo, + hasUserInfo: true + }) + }, + onShow:function(){ + var that = this + wx.getStorage({ + key: 'skin', + success: function(res){ + if (res.data == "") { + that.setData({ + skin: config.skinList[0].imgUrl + }) + } else { + that.setData({ + skin: res.data + }) + } + } + }) + }, + onPullDownRefresh: function() { + this.onLoad(function(){ + wx.stopPullDownRefresh() + }) + }, + viewGridDetail: function(e) { + var data = e.currentTarget.dataset + wx.navigateTo({ + url: "../" + data.url + '/' + data.url + }) + }, + viewSkin: function() { + wx.navigateTo({ + url: "/pages/skin/skin" + }) + } +}) \ No newline at end of file diff --git a/pages/my/my.json b/pages/my/my.json new file mode 100644 index 0000000..1da73fa --- /dev/null +++ b/pages/my/my.json @@ -0,0 +1,3 @@ +{ + "navigationBarTitleText": "我的" +} \ No newline at end of file diff --git a/pages/my/my.wxml b/pages/my/my.wxml new file mode 100644 index 0000000..4996960 --- /dev/null +++ b/pages/my/my.wxml @@ -0,0 +1,18 @@ + + + + + + + {{userInfo.nickName}} + + + + + + + {{gridItem.zhName}} + + + + \ No newline at end of file diff --git a/pages/my/my.wxss b/pages/my/my.wxss new file mode 100644 index 0000000..e70bb4b --- /dev/null +++ b/pages/my/my.wxss @@ -0,0 +1,119 @@ +.userinfo { + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + height: 200px; + background-size: 120%; +} +.userinfo-avatar { + width: 128rpx; + height: 128rpx; + margin: 20rpx; + border-radius: 50%; +} + +.userinfo-nickname { + color: #aaa; +} +.user-skin { + position: absolute; + top: 20rpx; + right: 20rpx; + width: 60rpx; + height: 60rpx; + border: 4rpx solid #fff; + border-radius: 60rpx; + background-color: rgba(0, 0, 0, .3); + background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAACHElEQVRoQ+2YfVXDMBTF71MADgAFMAdMAThgUwA42BwMB5sCQAE4YCgAHODgce5Idto0adJ26ygn+bMnee/+3lfTCga+ZOD6kQEOncGcgZyBjhHoVEKqegHgyGj4EpHPFD2qegrgpOk5n+1GAKp6DOAKwATApWNwLSKjRIA3AIQvricASxF5TrFh9yQDqOotgBkAQoTWWERe6wSoKsFfavasAdzH7CQDmKg/eiLu0/ANYBQqJVM6jH5dEKzdmYjMY9mozYCpcUYrxaH1RQg6fyg6T8ygq5dlNRUR2vSuIEBL8a4T29Rs2raLJcXS9EJ4AXYkvq1g37nggKgAmJpn2bhTYpeC2tjihJq6B30AbNjrNh56OMPptCj6KQGoKoUT4C8vTjn2xWZtAUzpfDScOIcA5WAgxKapiwBLADeHUNTC51xE+FL9BTAvGEZ/SOuML0wLwBcVrwDnAyF4582AZeT2wBAgtuJLPWBKKSUTNLCvTMVsl8RXABIgVrzyRm6TXapwbK7qvmFSEe8FqIFYicgk4TrcCYDXaFV1J6JXfBDAA7ERb57H7vOdAYwfCxEUXwtQgLizM7dPAOOLs37R6jodCmMfJdQkhcmflNZoBqgPb/Sb2j2eM9CkXhP25gxEg5SbODdxOQJ5CkWbptmGPIWi8foPU4hfbfv6a8dfiMEfub7oNm7iaIp63pABeg54xV3OQM5AxwgMvoR+AMyi8zFvBJhOAAAAAElFTkSuQmCC); + background-position: center; + background-repeat: no-repeat; + background-size: 40rpx; +} +.grids { + position: relative; + width: 100%; + display: flex; + flex-wrap: wrap; +} + +.grids::before, .grid::before, .grids::after, .grid::after { + content: ''; + display: block; + position: absolute; + z-index: 99; + background-color: #ccc; +} +.grids::before, .grid::before { + left: 0; + width: 100%; + height: 1px; + transform: scaleY(0.5); +} + +.grids::before { + top: 0; +} + +.grid::before { + bottom: 0; +} + +.grids::after, .grid::after { + top: 0; + height: 100%; + width: 1px; + transform: scaleX(0.5); +} + +.grids::after { + left: 0; +} + +.grid::after { + right: 0; +} + +.grid { + box-sizing: border-box; + position: relative; + display: flex; + flex-wrap: wrap; + align-items: center; + justify-content: space-around; + width: 250rpx; + height: 250rpx; + padding: 20rpx; + text-align: center; +} + +.grid:active { + background-color: #fafafa; +} + +.grid-icon { + width: 80rpx; + height: 80rpx; + margin-top: 20rpx; + margin-bottom: 10rpx; + background-position: center; + background-repeat: no-repeat; + background-size: contain; +} + +.grid-icon-favorite { + background-image: url(data:image/png;base64,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); +} + +.grid-icon-history { + background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIAAAACACAYAAADDPmHLAAAMsklEQVR4Xu2dUXLbNhPH/yDd54a9QJ0T1DlBlRPEOUGdqTTTt9jvkaJaeY/y9s1I30Q5QZwTRD5B5RPUucBH99kS9xuAsiK7FokFQBKkyJdMxgBI7P6wWCwWkED77LUExF73vu08WgD2HIIWgBaAPZfAnne/tQAtAM2XQNzr/6p6mYhDCBxm9phwjYCuZZloMrpsunQaZQHi3vAISH4FkVTyESCOIPDESomEG4AWABYQ4hoILqPJUP6/EU+tAdgoHNQBiY61snVVKqEQNAfEvO5A1A6A+I/hIZar1xDiGMgx57oKtS93DcIMB8Gn6D9DNX3U5akFAPHJ8AnC5AUCnKam3etngQRjrIIv0Wx44/WXAn4HgjajHeKkNPPuSmPKd8DYd6vgpQVQil+t3kIqvhEPzRCGf/o4PXgFgDL1P6zeN0fxD+mlGW7DM5+mBm8AiHuD1yAMa2fquRZKrSAwjCbnH7hViyhfOQDrpdzHGjh3buVPNIcIz6qOKVQKQNztv4cQ0rPf34doHE1HZ1UJoBIAUicv+Vz+qKcrQHnnu54ngPilAmUsEAYvq3ASSwcg/v3NMUTwsdi5ni5BMkpHaRh3ebDgOF7KGT1YHkGIQ5DcP6AOINL9hKIe6RtQ8ir677uLol7xWLulAlCcyZcjW8yRJPMiBRh333SAoANBx4VZipKnhNIAiHv9jy6XdwT6R0DMgGBWhSO1nsZOQXQMIX52O2ppFk1Gr9y2+XhrhQOQru2Tr+7me7pEQuMiRzpX8MoyCDF0Ok3IVcIyfMmZurjfLcsXCoBb5ct5nYbR9N3cpKNl1FlPETJs/Zuj9y1wGzwvEoLCAHCnfLoC0anPin+o7HUoe+bIIhQKQSEAuFC+muMJw2g6GjsaTaU3I1c8FIiZgPjR8uWFQVAMAN3+VwjRMe404QuWwUmRps/425gV14NhCOA1s+r94kTzaDp6btXGI5WdA2Dj7aeePU6jyWjmuqNVt+fGGrhfHTgFIO4NpLk2JF2u5cOTKpZ0ZcGx9g0uLGMIH6LJubPwuTMAVIQvCGR4l/8QPmEZnDbB5Ot0Pu4OZlYrhSR56WoZ7ASANHMn+csovEv4FE3PG5L4oaP+tEzcHcit77f6NbZKyrDxQfDMxd6BGwB6g78MAz1OzZmRMCusFPf6J4CQW+EmzyKanD8zqbhdxxoA83mfXjXR2eMqxBIC6wFkBcA6mUOOft6zp2Z/l5DsIAie2TjOlgAYmP5W+Y9yYOwTWMYHjAGIu/1TCPGeOfQvo8nIPEDEe1ntShuvDojOTCOmRgCkCRPJ3xyvXwV5bsPDfVnqmdC3zoqWR854WUlyVbAMnprI1gwAk3UsJc/rtKFjokAXdaRfRVjN2fsHhlMrG4B1IsTfrM4S/oym5zIe3j4aEjB2CsPgKTc2wAeAPfqpnfc1lP6wSNwdXEDgBauqgRVgAWA0+mG3TGEJoEGFpT9AP6yu2VPBbRBxfAEeAPzwpXWgwoVO030K8QKkjpMvIMJPNmtnF9+k04bRSos53WoDwPb8ib5hGR5xaNQRCrfM7u3pekQi415/wVoVMFcE+gCw49bVCzh/BPk/PaUJp4FMqmU8+rJnAMCI+hF9i6aj7MuYGN0xLRr3+nJNvftAB9Ncmn6Hbb3cfvz7BdobRVoA8J0/fQJthZNVP+4NKLv9eqxQjHItNJeEegAwnD+fIn5NAUBCHHf716wDKJrWTQ+A3kAGfnRNuheevxJaQyxA2hd27sB1NDl/mmdhcwFgb/lqmp68D3Px90YBkJ6winlyyXdy8wFg7frRVTQZeXOLV5MASKcBZnRQY5dQAwDOS/1w/u5GSeMA4CbeEr5E03N5n+LORweAWHvblxmG5JkzfummASAl8L9e/0Y7PEy4iabnkTEAvPnfL/PfNCdwY9W400DOXkymBciPpN1jyxvvv6lTwHo5yMvEyvEDcgBgHGBweFiBb+wfr9HEKYBnlZVcMgdmNgB5odRtuXs2/zd1CmD7AciOduZZAD0H0JPY/0M70EQLsA4KZe9xbAsixxHMsQB5sfS7N/kZU28uALxDuNHkfKeed/6BtQ2pGXd2NbfrttNYABh7M0pWGQm5jgAwz0vXVaZJueYCwMwRMAKAs/ngacp3C8Bmit55DjPDAjCOL7cAmBgo4zrra2f0N4YypugWgJoeVcu3blt8FQ1AlpdpjLmDivlC8nP1otP1/L61ADQqIYQf42gBaAHY+IC7j+Y58QHaKUDHaLst49UUAE+Pf2kIaQEQ/8q1MPzGPYTpVv06+Y4lTgFZkSbXHee0pwEAp7mHZa+RJGeurmvjfgirb0argL0IBHHF/lj58tPgWGH6NBZsEgjihBvLF4KO6lijRKfBR/Wfn3Zl2vSuemwAjELBnDNptd0McqSakiOhzEwtw80gTh66RvapI1GzmmGfpmG1vu1klXv9DfdGMaPtYNk9/QxUPyNq7Dx6QwDKXgZzDovKo3o/TUZPdnXNWUpY2ULQ0ZVB/pxOs/fLVDD9xayjenYpYfq3Wpc8D+pqSp6pI2CsnUuv23BarvRMaP5JbZukUM6xsApGgq6ulNBu5Q9BBo6OrdENRDiv4poZ9iFRq7Tw3vAISDTvAvbTD9CFpC7l+LeJZh8QzT0apu8IAj76AXVRrO53cub/PAdQvjMXAJYn7eHhEF3B1qEc26nVWJ5rAMC4FFrjhXUQtK/fyDb/To6Hs/wAAB6eEPJVodzvirsDvYM6m4YdXBAh2+JF1PzcF+AK27fy7IuiNE9r5U4BCgDez8FpX1Hmm5B9/p6Y/2OcWjEKPQDkOnqV6N8Q7mlQyGcFZ30be/dPNqZ5V5MWAKkVYFxZavkzJnVVVFHfzXb+oH9Zhz4AnKiglERrBZzwYBD6zUwAefhR+gBwtocVAMX82LETqdaokbjX/wyIzIuetrvDvahTG4B0NcC4MUR9VbsisGHNaO5n/mgEDwC2M2j+Y0Y2gmtKXU7Yd9NnTefvrjwLADMrUP6WaRMA4Gb9pAaX/zvMfAC4VqB1CNk8smP+d29gjn5ZjQ2AkRVg/ooFW2INqrA++i234HUv5057bzD6zQEw+UGjdlWghSnX6091b/6jnEYWILUCjF3Cu657nDWkpZ2CCxnJVBFgfkWPMQAKAk50cCO8dmn4GEfsVK/v8rS6od0OAM7hke1et4kj9xhQTh8lX7Uv5d6ubRlxtQIgtQK8O+vWDssNRPC8iqTKgq04u3kr5TvISrYGwHgqkCuDPYfATvn6Gz5ZVLoB4I/hIa1WC7Pc+/30CVSYF8FnE7OvvP4wPHJxR4ETAJQV4P6axT0s9wsCc4dvLTSHPpQzAIz9ge/e7Ay34VnVPzXLnsSZFeJu/z2E4N9K8v09Wpk+up/lFIA0PsDdMbz3qQsgeNVE53C9r/8ZgPnpJMNoX+E+wPYL0lDmSl5n/osuhfdnA+kc0lk0Gc2M6ntYSU2PIvhoMt9/7w5d4TbsuLaQzi2AsgK2EMhGiOY4CF+5cHSqYkKN+uXqI4To2H1DMcqX31QIAM4gUCBgiGXwwTX5dgrJrx13B28hMMwvmVeiOOUXCoBjCG4AjH0HYb2T9xsA6eTxdvMe5aBY5RcOgFMIUmvgJQhK8QfJa6V4gZ23ceSN9ft/L175pQCwgeAgGUNAjg5HD81A4iKann9x1CC7mbg7eAFBx4A4YVfOqkD4hGVwWsa0V5gP8Fj/jPYN8iSrrALNADHHMrgsWmhK6aCOUrqz0X6vk07X+XniKxUAZQ1+f3NMgZiZhY3zurNePUgYBM2B8B+bmEKamrX6ESS9eOrYe/O7v1+FdxM6Kfvm0dIBUBCovMLVhXGsQIODB0UWIJL+wwIQ8t8dD8n5+whCpP+W9tAVwvC4iiVvJQDcybWQKaE0pTl7Uakm/+FXVwqAsgYqqUSMS7QGzjRn1xBdgeg0mr6b27VjV7tyADbWoNs/JYFhYb6BnZyc1VZzPWEYTUdjZ41aNOQNAMoapOtpx8tFC+m4rlri8k73070CYGMNVAw9GbqNG+iKpIByUvEHwbAKJy+vN14C8BAEEnRct6khNfXiwlfF38nYawA2IKipYSUDLyf+O4vSucMMy3BWdFAqb3Tr/L0WAGx3ZJ1YcQqiYwjxs04nCy9D9A1CXCAMxj6a+az+1w6AezCofPqVDMt2SFCnrGlibd7nAM2rujPYFdS1BuChENI065WMKxwCdETAkS0UStlpBFFGE6/rrnDvAkGuSM5qJ03Blukv4hAk4ch4BF0rRQOoOkhThmwaZQHKEFjT3tEC0DSNMvvTAsAUWNOKtwA0TaPM/rQAMAXWtOItAE3TKLM//wfFRPHbaMwAzgAAAABJRU5ErkJggg==); +} + + +.grid-icon-photo { + background-image: url(data:image/png;base64,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); +} +.grid-title { + width: 100%; + color: #666; +} \ No newline at end of file diff --git a/pages/photo/photo.js b/pages/photo/photo.js new file mode 100644 index 0000000..6224158 --- /dev/null +++ b/pages/photo/photo.js @@ -0,0 +1,55 @@ +Page({ + data:{ + pictures: [], + nullTip: { + tipText: '亲,没有上传照片哦', + actionText: '上传', + fn: 'uploadImg' + } + }, + onLoad:function(options){ + var that = this + wx.getStorage({ + key: 'gallery', + success: function(res){ + that.setData({ + pictures: res.data, + }) + console.log(res.data) + } + }) + + }, + uploadImg: function() { + var that = this + wx.chooseImage({ + count: 1, + success: function(res) { + var tempFilePath = res.tempFilePaths[0] + wx.saveFile({ + tempFilePath: tempFilePath, + success: function(res) { + var savedFilePath = res.savedFilePath + console.log(savedFilePath) + that.setData({ + pictures: that.data.pictures.concat(savedFilePath) + }) + wx.setStorage({ + key: 'gallery', + data: that.data.pictures + }) + } + }) + } + }) + }, + previewImage: function(e) { + var data = e.currentTarget.dataset + var index = data.index + var that = this + wx.previewImage({ + current: that.data.pictures[index], // 当前显示图片的链接,不填则默认为 urls 的第一张 + urls: that.data.pictures + }) + } +}) \ No newline at end of file diff --git a/pages/photo/photo.json b/pages/photo/photo.json new file mode 100644 index 0000000..f64877e --- /dev/null +++ b/pages/photo/photo.json @@ -0,0 +1,4 @@ +{ + "navigationBarTitleText": "相册", + "enablePullDownRefresh": false +} \ No newline at end of file diff --git a/pages/photo/photo.wxml b/pages/photo/photo.wxml new file mode 100644 index 0000000..092ab33 --- /dev/null +++ b/pages/photo/photo.wxml @@ -0,0 +1,19 @@ + + {{nullTip.tipText}} + + {{nullTip.actionText}} + + + {{nullTip.actionText}} + + + + + + + + + + + 上传 + \ No newline at end of file diff --git a/pages/photo/photo.wxss b/pages/photo/photo.wxss new file mode 100644 index 0000000..a4c33f8 --- /dev/null +++ b/pages/photo/photo.wxss @@ -0,0 +1,75 @@ +.photo { + display: flex; + flex-wrap: wrap; + margin-bottom: 60rpx; + position: relative; +} + +.photo::before, .photo::after, .photo-item::before, .photo-item::after { + content: ''; + display: block; + position: absolute; + background-color: #e5e5e5; +} + +.photo::before, .photo::after { + top: 0; + left: 0; +} + +.photo::before, .photo::after { + bottom: 0; + right: 0; +} + +.photo::before, .photo-item::before { + width: 100%; + height: 1px; + transform: scaleY(0.5); +} + +.photo::after, .photo-item::after { + width: 1px; + height: 100%; + transform: scaleX(0.5); +} + +.photo-item { + width: 250rpx; + height: 250rpx; + overflow: hidden; + position: relative; +} + +.photo-item-cover { + width: 100%; + height: 100%; +} + +.null-tip { + height: 400rpx; + margin: 120rpx 0; + background-image: url(data:image/png;base64,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); + background-repeat: no-repeat; + background-position: center; + background-size: 140rpx 112rpx; + line-height: 800rpx; + text-align: center; + color: #999; +} + +.null-action { + margin: 0 auto; + width: 200rpx; + height: 80rpx; + line-height: 80rpx; + text-align: center; + border-radius: 8rpx; + border: 1px solid #47a86c; + color: #47a86c; +} + +.null-action:active { + background-color: #47a86c; + color: #fff; +} \ No newline at end of file diff --git a/pages/popular/popular.js b/pages/popular/popular.js new file mode 100644 index 0000000..ec6ca0a --- /dev/null +++ b/pages/popular/popular.js @@ -0,0 +1,24 @@ +// pages/xwdt/xwdt.js +var moviesInfo = require('../../data/movieInfo.js'); +Page({ + data: { + }, + onLoad: function (options) { + this.setData({ + posts_key: moviesInfo.postList + }) + }, + jumpBtn:function(options){ + // console.log(options) + var postId = options.currentTarget.dataset.postid; + wx.navigateTo({ + url: '/pages/moviemore/moviemore?id='+postId, + }) + }, + onSwiperTap: function (event) { + var postId = event.target.dataset.postid; + wx.navigateTo({ + url: "/pages/moviemore/moviemore?id=" + postId + }) +}, +}) \ No newline at end of file diff --git a/pages/popular/popular.json b/pages/popular/popular.json new file mode 100644 index 0000000..803cf51 --- /dev/null +++ b/pages/popular/popular.json @@ -0,0 +1,3 @@ +{ + "navigationBarTitleText": "中国古代数学" +} \ No newline at end of file diff --git a/pages/popular/popular.wxml b/pages/popular/popular.wxml new file mode 100644 index 0000000..18dac5b --- /dev/null +++ b/pages/popular/popular.wxml @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + {{item.title}} + {{item.score}} + + + + \ No newline at end of file diff --git a/pages/popular/popular.wxss b/pages/popular/popular.wxss new file mode 100644 index 0000000..9de6f21 --- /dev/null +++ b/pages/popular/popular.wxss @@ -0,0 +1,44 @@ +#gun{ + height: 400rpx; +} +.roll_img{ + width: 100%; + height: 100%; +} + +.movie-list{ + box-sizing: border-box; + width: 750rpx; + padding: 10rpx 15rpx; + display: flex; + flex-wrap: wrap; + flex-direction: row; + justify-content: space-between; + box-shadow: 0 0 40rpx #f4f4f4 inset; +} +.movie-list-li { + width: 350rpx; + height: 540rpx; + margin-bottom: 20rpx; + border-radius: 10rpx; + background-color: #fff; + border: 1px solid #e4e4e4; + box-shadow: 0 20rpx 40rpx #eee; + display: flex; + flex-direction: column; + align-items: center; + justify-content: space-between; +} +.item-top image{ + width: 350rpx; +} +.item-bottom{ + width: 300rpx; + display: flex; + justify-content: space-between; + margin-bottom: 20rpx; +} +.item-bottom text{ + color: #e09015; +} + diff --git a/pages/skin/skin.js b/pages/skin/skin.js new file mode 100644 index 0000000..46f834b --- /dev/null +++ b/pages/skin/skin.js @@ -0,0 +1,39 @@ +var config = require('../../data/skinList.js'); +Page({ + data:{ + skinList: config.postList, + nowSkin: '' + }, + onLoad:function(options){ + var that = this + wx.getStorage({ + key: 'skin', + success: function(res){ + if (res.data == "") { + that.setData({ + nowSkin: config.skinList[0].imgUrl + }) + } else { + that.setData({ + nowSkin: res.data + }) + } + } + }) + }, + chooseSkin: function(e) { + var url = e.currentTarget.dataset.url + wx.setStorage({ + key: 'skin', + data: url, + success: function(res){ + wx.navigateBack({ + delta: 1, + success: function(res){ + console.log('success') + } + }) + } + }) + } +}) \ No newline at end of file diff --git a/pages/skin/skin.json b/pages/skin/skin.json new file mode 100644 index 0000000..6e9aa64 --- /dev/null +++ b/pages/skin/skin.json @@ -0,0 +1,3 @@ +{ + "navigationBarTitleText": "背景卡" +} \ No newline at end of file diff --git a/pages/skin/skin.wxml b/pages/skin/skin.wxml new file mode 100644 index 0000000..05d5f68 --- /dev/null +++ b/pages/skin/skin.wxml @@ -0,0 +1,8 @@ + + + + + {{skinItem.title}} + + + \ No newline at end of file diff --git a/pages/skin/skin.wxss b/pages/skin/skin.wxss new file mode 100644 index 0000000..c7447ef --- /dev/null +++ b/pages/skin/skin.wxss @@ -0,0 +1,60 @@ +.skin-list { + overflow: hidden; +} +.skin-item, .skin-img { + width: 710rpx; + height: 360rpx; +} + +.skin-item { + box-sizing: border-box; + position: relative; + margin: 20rpx auto; + border-radius: 20rpx; + box-shadow: 0 20rpx 20rpx rgba(0, 0, 0, .2); + overflow: hidden; +} + +.skin-item-active { + border: 6rpx solid #47a86c; +} + +.skin-item-active::before { + content: ''; + display: block; + position: absolute; + top: -80rpx; + right: -80rpx; + z-index: 4; + width: 160rpx; + height: 160rpx; + transform: rotate(45deg); + background-color: #47a86c; +} + +.skin-item-active::after { + content: '在用'; + display: block; + position: absolute; + top: 5px; + right: 3px; + z-index: 4; + text-align: center; + transform: rotate(45deg); + color: #fff; +} + +.skin-title { + box-sizing: border-box; + position: absolute; + bottom: 0; + left: 0; + width: 100%; + height: 80rpx; + font-size: 32rpx; + line-height: 80rpx; + padding: 0 40rpx; + background-color: rgba(0, 0, 0, .6); + border-radius: 0 0 20rpx 20rpx; + color: #fff; +} \ No newline at end of file diff --git a/pages/talking/talking.js b/pages/talking/talking.js new file mode 100644 index 0000000..1f6756c --- /dev/null +++ b/pages/talking/talking.js @@ -0,0 +1,20 @@ +var talksInfo = require('../../data/talkInfo.js'); +Page({ + + + onLoad: function (options) { + + // this.data.posts_key = postsData.postList + this.setData({ + posts_key: talksInfo.postList + }) + + }, + jumpBtn: function (options) { + var postId = options.currentTarget.dataset.postid; + + wx.navigateTo({ + url: '/pages/talkingmore/talkingmore?id=' + postId + }) + }, +}) \ No newline at end of file diff --git a/pages/talking/talking.json b/pages/talking/talking.json new file mode 100644 index 0000000..8572354 --- /dev/null +++ b/pages/talking/talking.json @@ -0,0 +1,3 @@ +{ + "navigationBarTitleText": "热门资讯" +} diff --git a/pages/talking/talking.wxml b/pages/talking/talking.wxml new file mode 100644 index 0000000..72a0874 --- /dev/null +++ b/pages/talking/talking.wxml @@ -0,0 +1,22 @@ + + + + + + {{item.title}} + + {{item.content}} + + + + + diff --git a/pages/talking/talking.wxss b/pages/talking/talking.wxss new file mode 100644 index 0000000..38a75e5 --- /dev/null +++ b/pages/talking/talking.wxss @@ -0,0 +1,68 @@ +.middle { + display: flex; + flex-direction: column; + margin-top: 20rpx; + margin-bottom: 40rpx; + background-color: #fff; + border-bottom: 1px solid #ededed; + border-top: 1px solid #ededed; + padding-bottom: 20rpx; +} + +.author-date { + margin: 10rpx 0 20rpx 10rpx; +} + +.author { + width: 60rpx; + height: 60rpx; + vertical-align: middle; /*垂直居中*/ +} + +.date { + margin-left: 20rpx; + vertical-align: middle; + font-size: 26rpx; +} + +.title { + font-size: 34rpx; + font-weight: 600; + color: #333; + margin-bottom: 10rpx; + margin-left: 20rpx; +} + +.post-image { + width: 100%; + height: 340rpx; + margin-bottom: 15rpx; +} + +.content { + color: #666; + font-size: 28rpx; + margin-bottom: 20rpx; + margin-left: 20rpx; + letter-spacing: 2rpx; /*文本间距*/ + line-height: 40rpx; /*文本行高*/ +} + +.like{ + font-size: 26rpx; + flex-direction: row; + line-height: 16rpx; + margin-left: 20rpx; +} + +.like-image{ + height: 16px; + width: 16px; + margin-right: 8px; + vertical-align: middle; +} + +.like-font{ + vertical-align: middle; + margin-right: 20rpx; +} \ No newline at end of file diff --git a/pages/talkingmore/talkingmore.js b/pages/talkingmore/talkingmore.js new file mode 100644 index 0000000..6a0576d --- /dev/null +++ b/pages/talkingmore/talkingmore.js @@ -0,0 +1,75 @@ +// pages/talkingmore/talkingmore.js +var talksInfo = require('../../data/talkInfo.js'); +Page({ + data: { + collected: false, + history:[] + }, + + onLoad: function (options) { + var postId = options.id; + this.data.currentPostId = postId; + var talkInfo= talksInfo.postList[postId]; + this.setData({ + talkInfo: talkInfo + }) + var postsCollected = wx.getStorageSync("posts_collected2"); + if (postsCollected) { + var postCollected = postsCollected[postId] + this.setData({ + collected: postCollected + }) + + } else { + var postsCollected = {}; + postsCollected[postId] = false; + wx.setStorageSync("posts_collected2", postsCollected) + } + // 历史 + var historyslist = wx.getStorageSync("historys_list2"); + if(!historyslist){ + var history=this.data.history; + wx.setStorageSync('historys_list2', history); + } + for(var i=0;i + + + + +{{talkInfo.title}} + + + + + + + + + +{{talkInfo.detail}} + \ No newline at end of file diff --git a/pages/talkingmore/talkingmore.wxss b/pages/talkingmore/talkingmore.wxss new file mode 100644 index 0000000..252c26e --- /dev/null +++ b/pages/talkingmore/talkingmore.wxss @@ -0,0 +1,81 @@ +.all { + display: flex; + flex-direction: column; +} + +.top { + width: 100%; +} + +.author-date { + flex-direction: row; + margin-left: 30rpx; + margin-top: 20rpx; +} + +.avatar { + height: 64rpx; + width: 64rpx; + vertical-align: middle; /*垂直居中*/ +} + +.author { + font-size: 30rpx; + font-weight: 300; /*字重即加粗*/ + margin-left: 20rpx; + vertical-align: middle; + color: #666; +} + +.const-text { + font-size: 24rpx; + color: #999; + margin-left: 20rpx; +} + +.date { + font-size: 24rpx; + margin-left: 30rpx; + vertical-align: middle; + color: #999; +} + +.title { + margin-left: 40rpx; + font-size: 36rpx; + font-weight: 700; + margin-top: 30rpx; + letter-spacing: 2px; + color: #4b556c; +} + +/*------------线 加 分享收藏等------------ */ + +.tool { + margin-top: 20rpx; +} + +.circle-img { + float: right; /*居右*/ + margin-right: 40rpx; + vertical-align: middle; +} + +.circle-img image{ + width:90rpx; + height: 90rpx +} + +.share-img{ + margin-left: 30rpx; +} + +.detail{ + color:#666; + margin-left:40rpx; + margin-top:20rpx; + margin-right:30rpx; + line-height: 44rpx; + letter-spacing: 2rpx; + font-size: 24rpx; +} \ No newline at end of file diff --git a/project.config.json b/project.config.json new file mode 100644 index 0000000..dee1dbb --- /dev/null +++ b/project.config.json @@ -0,0 +1,49 @@ +{ + "description": "项目配置文件", + "packOptions": { + "ignore": [], + "include": [] + }, + "setting": { + "urlCheck": true, + "es6": true, + "enhance": false, + "postcss": true, + "preloadBackgroundData": false, + "minified": true, + "newFeature": true, + "coverView": true, + "nodeModules": false, + "autoAudits": false, + "showShadowRootInWxmlPanel": true, + "scopeDataCheck": false, + "uglifyFileName": false, + "checkInvalidKey": true, + "checkSiteMap": true, + "uploadWithSourceMap": true, + "compileHotReLoad": false, + "useMultiFrameRuntime": false, + "useApiHook": true, + "babelSetting": { + "ignore": [], + "disablePlugins": [], + "outputPath": "" + }, + "useIsolateContext": true, + "useCompilerModule": true, + "userConfirmedUseCompilerModuleSwitch": false, + "packNpmManually": false, + "packNpmRelationList": [] + }, + "compileType": "miniprogram", + "libVersion": "2.7.7", + "appid": "touristappid", + "projectname": "%E7%AC%AC2%E7%AB%A0%E6%BC%94%E7%A4%BA%E6%A1%88%E4%BE%8B", + "simulatorType": "wechat", + "simulatorPluginLibVersion": {}, + "condition": {}, + "editorSetting": { + "tabIndent": "insertSpaces", + "tabSize": 2 + } +} \ No newline at end of file diff --git a/project.private.config.json b/project.private.config.json new file mode 100644 index 0000000..51cce1b --- /dev/null +++ b/project.private.config.json @@ -0,0 +1,10 @@ +{ + "description": "项目私有配置文件。此文件中的内容将覆盖 project.config.json 中的相同字段。项目的改动优先同步到此文件中。详见文档:https://developers.weixin.qq.com/miniprogram/dev/devtools/projectconfig.html", + "projectname": "202212840404陈帅屹", + "setting": { + "compileHotReLoad": true, + "urlCheck": false, + "preloadBackgroundData": false + }, + "libVersion": "3.1.5" +} \ No newline at end of file diff --git a/sitemap.json b/sitemap.json new file mode 100644 index 0000000..ca02add --- /dev/null +++ b/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/static/img/11.webp b/static/img/11.webp new file mode 100644 index 0000000..92eb541 Binary files /dev/null and b/static/img/11.webp differ diff --git a/static/img/111111.jpg b/static/img/111111.jpg new file mode 100644 index 0000000..470af4e Binary files /dev/null and b/static/img/111111.jpg differ diff --git a/static/img/121.png b/static/img/121.png new file mode 100644 index 0000000..4e84f1a Binary files /dev/null and b/static/img/121.png differ diff --git a/static/img/123.mp4 b/static/img/123.mp4 new file mode 100644 index 0000000..ca89a3a Binary files /dev/null and b/static/img/123.mp4 differ diff --git a/static/img/1234.png b/static/img/1234.png new file mode 100644 index 0000000..5ef2242 Binary files /dev/null and b/static/img/1234.png differ diff --git a/static/img/2222.jpg b/static/img/2222.jpg new file mode 100644 index 0000000..0c3ef14 Binary files /dev/null and b/static/img/2222.jpg differ diff --git a/static/img/22222.jpg b/static/img/22222.jpg new file mode 100644 index 0000000..7d458a3 Binary files /dev/null and b/static/img/22222.jpg differ diff --git a/static/img/231.png b/static/img/231.png new file mode 100644 index 0000000..ddc099e Binary files /dev/null and b/static/img/231.png differ diff --git a/static/img/333.jpg b/static/img/333.jpg new file mode 100644 index 0000000..177ee61 Binary files /dev/null and b/static/img/333.jpg differ diff --git a/static/img/33333.jpg b/static/img/33333.jpg new file mode 100644 index 0000000..4f98531 Binary files /dev/null and b/static/img/33333.jpg differ diff --git a/static/img/341.png b/static/img/341.png new file mode 100644 index 0000000..8f3737b Binary files /dev/null and b/static/img/341.png differ diff --git a/static/img/561.png b/static/img/561.png new file mode 100644 index 0000000..4d921c3 Binary files /dev/null and b/static/img/561.png differ diff --git a/static/img/771.png b/static/img/771.png new file mode 100644 index 0000000..b5e4d45 Binary files /dev/null and b/static/img/771.png differ diff --git a/static/img/891.png b/static/img/891.png new file mode 100644 index 0000000..34e2278 Binary files /dev/null and b/static/img/891.png differ diff --git a/static/img/901.png b/static/img/901.png new file mode 100644 index 0000000..65a5cce Binary files /dev/null and b/static/img/901.png differ diff --git a/static/img/OIP-C.jpg b/static/img/OIP-C.jpg new file mode 100644 index 0000000..48de09a Binary files /dev/null and b/static/img/OIP-C.jpg differ diff --git a/static/img/author1.jpg b/static/img/author1.jpg new file mode 100644 index 0000000..c931fa1 Binary files /dev/null and b/static/img/author1.jpg differ diff --git a/static/img/chat.png b/static/img/chat.png new file mode 100644 index 0000000..590b4d7 Binary files /dev/null and b/static/img/chat.png differ diff --git a/static/img/color.jpg b/static/img/color.jpg new file mode 100644 index 0000000..c29b451 Binary files /dev/null and b/static/img/color.jpg differ diff --git a/static/img/download.jpg b/static/img/download.jpg new file mode 100644 index 0000000..8fa44cc Binary files /dev/null and b/static/img/download.jpg differ diff --git a/static/img/ice.jpg b/static/img/ice.jpg new file mode 100644 index 0000000..e3d939d Binary files /dev/null and b/static/img/ice.jpg differ diff --git a/static/img/talking1.jpg b/static/img/talking1.jpg new file mode 100644 index 0000000..90d3647 Binary files /dev/null and b/static/img/talking1.jpg differ diff --git a/static/img/view.png b/static/img/view.png new file mode 100644 index 0000000..b29f801 Binary files /dev/null and b/static/img/view.png differ