diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 0000000..8bc64a5 Binary files /dev/null and b/.DS_Store differ diff --git a/liferestartWX/.DS_Store b/liferestartWX/.DS_Store new file mode 100644 index 0000000..cfc58fb Binary files /dev/null and b/liferestartWX/.DS_Store differ diff --git a/liferestartWX/README.md b/liferestartWX/README.md new file mode 100644 index 0000000..0a6b31a --- /dev/null +++ b/liferestartWX/README.md @@ -0,0 +1,18 @@ +# lifeRestartWX - 人生重开模拟器微信小程序版 +人生重开模拟器[微信小程序版](https://github.com/uiiang/lifeRestartWX) + +## 简介 +- 根据[人生重开模拟器](https://github.com/VickScarlet/lifeRestart)开发的微信小程序版 + +- 数据和核心逻辑代码均采用VickScarlet版 + +## 开发笔记 + +- age, events, telents数据修改为微信本地读取js + +## 快速体验 + +- 微信小程序搜索 奇奇怪怪的软件 + +- 微信扫描二维码 + \ No newline at end of file diff --git a/liferestartWX/app.js b/liferestartWX/app.js new file mode 100644 index 0000000..1ed57c4 --- /dev/null +++ b/liferestartWX/app.js @@ -0,0 +1,19 @@ +// app.js +App({ + onLaunch() { + // 展示本地存储能力 + const logs = wx.getStorageSync('logs') || [] + logs.unshift(Date.now()) + wx.setStorageSync('logs', logs) + + // 登录 + wx.login({ + success: res => { + // 发送 res.code 到后台换取 openId, sessionKey, unionId + } + }) + }, + globalData: { + userInfo: null + } +}) diff --git a/liferestartWX/app.json b/liferestartWX/app.json new file mode 100644 index 0000000..ffe5300 --- /dev/null +++ b/liferestartWX/app.json @@ -0,0 +1,19 @@ +{ + "pages":[ + "pages/index", + "pages/talents", + "pages/summary", + "pages/trajectory", + "pages/property", + "pages/ranking" + ], + "window":{ + "backgroundColor": "#000", + "backgroundTextStyle": "light", + "navigationBarBackgroundColor": "#F6F6F6", + "navigationBarTitleText": "人生重开模拟器", + "navigationBarTextStyle": "black" + }, + "style": "v2", + "sitemapLocation": "sitemap.json" +} diff --git a/liferestartWX/app.wxss b/liferestartWX/app.wxss new file mode 100644 index 0000000..f002ef8 --- /dev/null +++ b/liferestartWX/app.wxss @@ -0,0 +1,14 @@ +/** + * 全局样式表 + * 使用@import语句可以导入外联样式表,@import后跟需要导入的外联样式表的相对路径,用;表示语句结束 + * 如果需要增加额外的WXSS样式表, 直接import即可, 但需注意引用顺序 + */ + + + + @import 'assets/styles/weui.wxss'; + @import 'assets/styles/example.wxss'; + page { + height: 100%; + background-color: #222831; + } \ No newline at end of file diff --git a/liferestartWX/assets/.DS_Store b/liferestartWX/assets/.DS_Store new file mode 100644 index 0000000..e4dde08 Binary files /dev/null and b/liferestartWX/assets/.DS_Store differ diff --git a/liferestartWX/assets/images/app_qcode.jpg b/liferestartWX/assets/images/app_qcode.jpg new file mode 100644 index 0000000..0b51713 Binary files /dev/null and b/liferestartWX/assets/images/app_qcode.jpg differ diff --git a/liferestartWX/assets/media/guide/001.mp3 b/liferestartWX/assets/media/guide/001.mp3 new file mode 100644 index 0000000..f9db219 Binary files /dev/null and b/liferestartWX/assets/media/guide/001.mp3 differ diff --git a/liferestartWX/assets/media/guide/002.mp3 b/liferestartWX/assets/media/guide/002.mp3 new file mode 100644 index 0000000..c4fc175 Binary files /dev/null and b/liferestartWX/assets/media/guide/002.mp3 differ diff --git a/liferestartWX/assets/media/guide/003.mp3 b/liferestartWX/assets/media/guide/003.mp3 new file mode 100644 index 0000000..278386c Binary files /dev/null and b/liferestartWX/assets/media/guide/003.mp3 differ diff --git a/liferestartWX/assets/media/guide/004.mp3 b/liferestartWX/assets/media/guide/004.mp3 new file mode 100644 index 0000000..460e786 Binary files /dev/null and b/liferestartWX/assets/media/guide/004.mp3 differ diff --git a/liferestartWX/assets/media/guide/005.mp3 b/liferestartWX/assets/media/guide/005.mp3 new file mode 100644 index 0000000..334cfa7 Binary files /dev/null and b/liferestartWX/assets/media/guide/005.mp3 differ diff --git a/liferestartWX/assets/media/guide/006.mp3 b/liferestartWX/assets/media/guide/006.mp3 new file mode 100644 index 0000000..84064ed Binary files /dev/null and b/liferestartWX/assets/media/guide/006.mp3 differ diff --git a/liferestartWX/assets/media/guide/007.mp3 b/liferestartWX/assets/media/guide/007.mp3 new file mode 100644 index 0000000..79513d1 Binary files /dev/null and b/liferestartWX/assets/media/guide/007.mp3 differ diff --git a/liferestartWX/assets/media/guide/end_cheer_001.mp3 b/liferestartWX/assets/media/guide/end_cheer_001.mp3 new file mode 100644 index 0000000..0c9c0fc Binary files /dev/null and b/liferestartWX/assets/media/guide/end_cheer_001.mp3 differ diff --git a/liferestartWX/assets/media/guide/start_cheer_001.mp3 b/liferestartWX/assets/media/guide/start_cheer_001.mp3 new file mode 100644 index 0000000..c4c3f38 Binary files /dev/null and b/liferestartWX/assets/media/guide/start_cheer_001.mp3 differ diff --git a/liferestartWX/assets/styles/example.wxss b/liferestartWX/assets/styles/example.wxss new file mode 100644 index 0000000..ee87773 --- /dev/null +++ b/liferestartWX/assets/styles/example.wxss @@ -0,0 +1,97 @@ +page { + width: 100%; + height: 100%; + position: relative; + color: rgba(0, 0, 0, .85); + background-color: #f8f8f8; + font-size: 16px; + font-family: PingFang SC, Helvetica Neue, Hiragino Sans GB, Helvetica, Microsoft YaHei, Arial; + -ms-text-size-adjust: 100%; + -webkit-text-size-adjust: 100%; + -webkit-tap-highlight-color: transparent; +} + +.page__hd { + padding: 40px; +} + +.page__bd { + padding-bottom: 40px; +} + +.page__bd_spacing { + padding-left: 10px; + padding-right: 10px; +} + +.page__ft { + padding-bottom: 10px; + text-align: center; +} + +.page__title { + text-align: left; + font-size: 20px; + font-weight: 400; +} + +.page__desc { + margin-top: 5px; + color: rgba(0, 0, 0, .45); + text-align: left; + font-size: 14px; +} + +.placeholder { + background-color: #ebebef; + color: #bbb; + text-align: center; + height: 30px; + line-height: 30px; + width: 100%; + box-sizing: border-box; +} + +.sub-title { + padding: 30rpx 30rpx 18rpx; + font-size: 28rpx; + color: rgba(0, 0, 0, .65); + width: 100%; + box-sizing: border-box; +} + +.button-sp-area { + margin: 20px auto 0; + width: 80%; + text-align: center; +} + +.btn-area { + margin: 1.17647059em 15px 0.3em; +} + +.btn-area button { + margin-bottom: 10px; +} + +.btn-area button:last-child { + margin-bottom: 0; +} + +.text-left { + text-align: left; +} + +.text-center { + text-align: center; +} + +.text-right { + text-align: right; +} + +.btn-group { + position: relative; + z-index: 1010; + margin-bottom: 50px; +} diff --git a/liferestartWX/assets/styles/weui.wxss b/liferestartWX/assets/styles/weui.wxss new file mode 100644 index 0000000..3e30f65 --- /dev/null +++ b/liferestartWX/assets/styles/weui.wxss @@ -0,0 +1,1019 @@ +page { + line-height: 1.6; + font-family: -apple-system-font, "Helvetica Neue", sans-serif; +} +icon { + vertical-align: middle; +} +.weui-cells { + position: relative; + margin-top: 1.17647059em; + background-color: #FFFFFF; + line-height: 1.41176471; + font-size: 17px; +} +.weui-cells:before { + content: " "; + position: absolute; + left: 0; + top: 0; + right: 0; + height: 1px; + border-top: 1rpx solid #D9D9D9; + color: #D9D9D9; +} +.weui-cells:after { + content: " "; + position: absolute; + left: 0; + bottom: 0; + right: 0; + height: 1px; + border-bottom: 1rpx solid #D9D9D9; + color: #D9D9D9; +} +.weui-cells__title { + margin-top: .77em; + margin-bottom: .3em; + padding-left: 15px; + padding-right: 15px; + color: #999999; + font-size: 14px; +} +.weui-cells_after-title { + margin-top: 0; +} +.weui-cells__tips { + margin-top: .3em; + color: #999999; + padding-left: 15px; + padding-right: 15px; + font-size: 14px; +} +.weui-cell { + padding: 10px 15px; + position: relative; + display: -webkit-box; + display: -webkit-flex; + display: flex; + -webkit-box-align: center; + -webkit-align-items: center; + align-items: center; +} +.weui-cell:before { + content: " "; + position: absolute; + left: 0; + top: 0; + right: 0; + height: 1px; + border-top: 1rpx solid #D9D9D9; + color: #D9D9D9; + left: 15px; +} +.weui-cell:first-child:before { + display: none; +} +.weui-cell_active { + background-color: #ECECEC; +} +.weui-cell_primary { + -webkit-box-align: start; + -webkit-align-items: flex-start; + align-items: flex-start; +} +.weui-cell__bd { + -webkit-box-flex: 1; + -webkit-flex: 1; + flex: 1; +} +.weui-cell__ft { + text-align: right; + color: #999999; +} +.weui-cell_access { + color: inherit; +} +.weui-cell__ft_in-access { + padding-right: 13px; + position: relative; +} +.weui-cell__ft_in-access:after { + content: " "; + display: inline-block; + height: 6px; + width: 6px; + border-width: 2px 2px 0 0; + border-color: #C8C8CD; + border-style: solid; + -webkit-transform: matrix(0.71, 0.71, -0.71, 0.71, 0, 0); + transform: matrix(0.71, 0.71, -0.71, 0.71, 0, 0); + position: relative; + top: -2px; + position: absolute; + top: 50%; + margin-top: -4px; + right: 2px; +} +.weui-cell_link { + color: #586C94; + font-size: 14px; +} +.weui-cell_link:active { + background-color: #ECECEC; +} +.weui-cell_link:first-child:before { + display: block; +} +.weui-icon-radio { + margin-left: 3.2px; + margin-right: 3.2px; +} +.weui-icon-checkbox_circle, +.weui-icon-checkbox_success { + margin-left: 4.6px; + margin-right: 4.6px; +} +.weui-check__label:active { + background-color: #ECECEC; +} +.weui-check { + position: absolute; + left: -9999px; +} +.weui-check__hd_in-checkbox { + padding-right: 0.35em; +} +.weui-cell__ft_in-radio { + padding-left: 0.35em; +} +.weui-cell_input { + padding-top: 0; + padding-bottom: 0; +} +.weui-label { + width: 105px; + word-wrap: break-word; + word-break: break-all; +} +.weui-input { + height: 2.58823529em; + min-height: 2.58823529em; + line-height: 2.58823529em; +} +.weui-toptips { + position: fixed; + -webkit-transform: translateZ(0); + transform: translateZ(0); + top: 0; + left: 0; + right: 0; + padding: 5px; + font-size: 14px; + text-align: center; + color: #FFFFFF; + z-index: 5000; + word-wrap: break-word; + word-break: break-all; +} +.weui-toptips_warn { + background-color: #E64340; +} +.weui-textarea { + display: block; + width: 100%; +} +.weui-textarea-counter { + color: #B2B2B2; + text-align: right; +} +.weui-textarea-counter_warn { + color: #E64340; +} +.weui-cell_warn { + color: #E64340; +} +.weui-form-preview { + position: relative; + background-color: #FFFFFF; +} +.weui-form-preview:before { + content: " "; + position: absolute; + left: 0; + top: 0; + right: 0; + height: 1px; + border-top: 1rpx solid #D9D9D9; + color: #D9D9D9; +} +.weui-form-preview:after { + content: " "; + position: absolute; + left: 0; + bottom: 0; + right: 0; + height: 1px; + border-bottom: 1rpx solid #D9D9D9; + color: #D9D9D9; +} +.weui-form-preview__value { + font-size: 14px; +} +.weui-form-preview__value_in-hd { + font-size: 26px; +} +.weui-form-preview__hd { + position: relative; + padding: 10px 15px; + text-align: right; + line-height: 2.5em; +} +.weui-form-preview__hd:after { + content: " "; + position: absolute; + left: 0; + bottom: 0; + right: 0; + height: 1px; + border-bottom: 1rpx solid #D9D9D9; + color: #D9D9D9; + left: 15px; +} +.weui-form-preview__bd { + padding: 10px 15px; + font-size: .9em; + text-align: right; + color: #999999; + line-height: 2; +} +.weui-form-preview__ft { + position: relative; + line-height: 50px; + display: -webkit-box; + display: -webkit-flex; + display: flex; +} +.weui-form-preview__ft:after { + content: " "; + position: absolute; + left: 0; + top: 0; + right: 0; + height: 1px; + border-top: 1rpx solid #D5D5D6; + color: #D5D5D6; +} +.weui-form-preview__item { + overflow: hidden; +} +.weui-form-preview__label { + float: left; + margin-right: 1em; + min-width: 4em; + color: #999999; + text-align: justify; + text-align-last: justify; +} +.weui-form-preview__value { + display: block; + overflow: hidden; + word-break: normal; + word-wrap: break-word; +} +.weui-form-preview__btn { + position: relative; + display: block; + -webkit-box-flex: 1; + -webkit-flex: 1; + flex: 1; + color: #3CC51F; + text-align: center; +} +.weui-form-preview__btn:after { + content: " "; + position: absolute; + left: 0; + top: 0; + width: 1px; + bottom: 0; + border-left: 1rpx solid #D5D5D6; + color: #D5D5D6; +} +.weui-form-preview__btn:first-child:after { + display: none; +} +.weui-form-preview__btn_active { + background-color: #EEEEEE; +} +.weui-form-preview__btn_default { + color: #999999; +} +.weui-form-preview__btn_primary { + color: #0BB20C; +} +.weui-cell_select { + padding: 0; +} +.weui-select { + position: relative; + padding-left: 15px; + padding-right: 30px; + height: 2.58823529em; + min-height: 2.58823529em; + line-height: 2.58823529em; + border-right: 1rpx solid #D9D9D9; +} +.weui-select:before { + content: " "; + display: inline-block; + height: 6px; + width: 6px; + border-width: 2px 2px 0 0; + border-color: #C8C8CD; + border-style: solid; + -webkit-transform: matrix(0.71, 0.71, -0.71, 0.71, 0, 0); + transform: matrix(0.71, 0.71, -0.71, 0.71, 0, 0); + position: relative; + top: -2px; + position: absolute; + top: 50%; + right: 15px; + margin-top: -4px; +} +.weui-select_in-select-after { + padding-left: 0; +} +.weui-cell__hd_in-select-after, +.weui-cell__bd_in-select-before { + padding-left: 15px; +} +.weui-cell_vcode { + padding-right: 0; +} +.weui-vcode-img { + margin-left: 5px; + height: 2.58823529em; + vertical-align: middle; +} +.weui-vcode-btn { + display: inline-block; + height: 2.58823529em; + margin-left: 5px; + padding: 0 0.6em 0 0.7em; + border-left: 1px solid #E5E5E5; + line-height: 2.58823529em; + vertical-align: middle; + font-size: 17px; + color: #3CC51F; + white-space: nowrap; +} +.weui-vcode-btn:active { + color: #52a341; +} +.weui-cell_switch { + padding-top: 6px; + padding-bottom: 6px; +} +.weui-uploader__hd { + display: -webkit-box; + display: -webkit-flex; + display: flex; + padding-bottom: 10px; + -webkit-box-align: center; + -webkit-align-items: center; + align-items: center; +} +.weui-uploader__title { + -webkit-box-flex: 1; + -webkit-flex: 1; + flex: 1; +} +.weui-uploader__info { + color: #B2B2B2; +} +.weui-uploader__bd { + margin-bottom: -4px; + margin-right: -9px; + overflow: hidden; +} +.weui-uploader__file { + float: left; + margin-right: 9px; + margin-bottom: 9px; +} +.weui-uploader__img { + display: block; + width: 79px; + height: 79px; +} +.weui-uploader__file_status { + position: relative; +} +.weui-uploader__file_status:before { + content: " "; + position: absolute; + top: 0; + right: 0; + bottom: 0; + left: 0; + background-color: rgba(0, 0, 0, 0.5); +} +.weui-uploader__file-content { + position: absolute; + top: 50%; + left: 50%; + -webkit-transform: translate(-50%, -50%); + transform: translate(-50%, -50%); + color: #FFFFFF; +} +.weui-uploader__input-box { + float: left; + position: relative; + margin-right: 9px; + margin-bottom: 9px; + width: 77px; + height: 77px; + border: 1px solid #D9D9D9; +} +.weui-uploader__input-box:before, +.weui-uploader__input-box:after { + content: " "; + position: absolute; + top: 50%; + left: 50%; + -webkit-transform: translate(-50%, -50%); + transform: translate(-50%, -50%); + background-color: #D9D9D9; +} +.weui-uploader__input-box:before { + width: 2px; + height: 39.5px; +} +.weui-uploader__input-box:after { + width: 39.5px; + height: 2px; +} +.weui-uploader__input-box:active { + border-color: #999999; +} +.weui-uploader__input-box:active:before, +.weui-uploader__input-box:active:after { + background-color: #999999; +} +.weui-uploader__input { + position: absolute; + z-index: 1; + top: 0; + left: 0; + width: 100%; + height: 100%; + opacity: 0; +} +.weui-article { + padding: 20px 15px; + font-size: 15px; +} +.weui-article__section { + margin-bottom: 1.5em; +} +.weui-article__h1 { + font-size: 18px; + font-weight: 400; + margin-bottom: .9em; +} +.weui-article__h2 { + font-size: 16px; + font-weight: 400; + margin-bottom: .34em; +} +.weui-article__h3 { + font-weight: 400; + font-size: 15px; + margin-bottom: .34em; +} +.weui-article__p { + margin: 0 0 .8em; +} +.weui-msg { + padding-top: 36px; + text-align: center; +} +.weui-msg__link { + display: inline; + color: #586C94; +} +.weui-msg__icon-area { + margin-bottom: 30px; +} +.weui-msg__text-area { + margin-bottom: 25px; + padding: 0 20px; +} +.weui-msg__title { + margin-bottom: 5px; + font-weight: 400; + font-size: 20px; +} +.weui-msg__desc { + font-size: 14px; + color: #999999; +} +.weui-msg__opr-area { + margin-bottom: 25px; +} +.weui-msg__extra-area { + margin-bottom: 15px; + font-size: 14px; + color: #999999; +} +@media screen and (min-height: 438px) { + .weui-msg__extra-area { + position: fixed; + left: 0; + bottom: 0; + width: 100%; + text-align: center; + } +} +.weui-flex { + display: -webkit-box; + display: -webkit-flex; + display: flex; +} +.weui-flex__item { + -webkit-box-flex: 1; + -webkit-flex: 1; + flex: 1; +} +.weui-btn { + margin-top: 15px; +} +.weui-btn:first-child { + margin-top: 0; +} +.weui-btn-area { + margin: 1.17647059em 15px 0.3em; +} +.weui-agree { + display: block; + padding: .5em 15px; + font-size: 13px; +} +.weui-agree__text { + color: #999999; +} +.weui-agree__link { + display: inline; + color: #586C94; +} +.weui-agree__checkbox { + position: absolute; + left: -9999px; +} +.weui-agree__checkbox-icon { + position: relative; + top: 2px; + display: inline-block; + border: 1px solid #D1D1D1; + background-color: #FFFFFF; + border-radius: 3px; + width: 11px; + height: 11px; +} +.weui-agree__checkbox-icon-check { + position: absolute; + top: 1px; + left: 1px; +} +.weui-footer { + color: #999999; + font-size: 14px; + text-align: center; +} +.weui-footer_fixed-bottom { + position: fixed; + bottom: .52em; + left: 0; + right: 0; +} +.weui-footer__links { + font-size: 0; +} +.weui-footer__link { + display: inline-block; + vertical-align: top; + margin: 0 .62em; + position: relative; + font-size: 14px; + color: #586C94; +} +.weui-footer__link:before { + content: " "; + position: absolute; + left: 0; + top: 0; + width: 1px; + bottom: 0; + border-left: 1rpx solid #C7C7C7; + color: #C7C7C7; + left: -0.65em; + top: .36em; + bottom: .36em; +} +.weui-footer__link:first-child:before { + display: none; +} +.weui-footer__text { + padding: 0 .34em; + font-size: 12px; +} +.weui-grids { + border-top: 1rpx solid #D9D9D9; + border-left: 1rpx solid #D9D9D9; +} +.weui-grid { + position: relative; + float: left; + padding: 20px 10px; + width: 33.33333333%; + box-sizing: border-box; + border-right: 1rpx solid #D9D9D9; + border-bottom: 1rpx solid #D9D9D9; +} +.weui-grid_active { + background-color: #ECECEC; +} +.weui-grid__icon { + display: block; + width: 28px; + height: 28px; + margin: 0 auto; +} +.weui-grid__label { + margin-top: 5px; + display: block; + text-align: center; + color: #000000; + font-size: 14px; + white-space: nowrap; + text-overflow: ellipsis; + overflow: hidden; +} +.weui-loading { + margin: 0 5px; + width: 20px; + height: 20px; + display: inline-block; + vertical-align: middle; + -webkit-animation: weuiLoading 1s steps(12, end) infinite; + animation: weuiLoading 1s steps(12, end) infinite; + background: transparent url(data:image/svg+xml;base64,PHN2ZyBjbGFzcz0iciIgd2lkdGg9JzEyMHB4JyBoZWlnaHQ9JzEyMHB4JyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMDAgMTAwIj4KICAgIDxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAiIGhlaWdodD0iMTAwIiBmaWxsPSJub25lIiBjbGFzcz0iYmsiPjwvcmVjdD4KICAgIDxyZWN0IHg9JzQ2LjUnIHk9JzQwJyB3aWR0aD0nNycgaGVpZ2h0PScyMCcgcng9JzUnIHJ5PSc1JyBmaWxsPScjRTlFOUU5JwogICAgICAgICAgdHJhbnNmb3JtPSdyb3RhdGUoMCA1MCA1MCkgdHJhbnNsYXRlKDAgLTMwKSc+CiAgICA8L3JlY3Q+CiAgICA8cmVjdCB4PSc0Ni41JyB5PSc0MCcgd2lkdGg9JzcnIGhlaWdodD0nMjAnIHJ4PSc1JyByeT0nNScgZmlsbD0nIzk4OTY5NycKICAgICAgICAgIHRyYW5zZm9ybT0ncm90YXRlKDMwIDUwIDUwKSB0cmFuc2xhdGUoMCAtMzApJz4KICAgICAgICAgICAgICAgICByZXBlYXRDb3VudD0naW5kZWZpbml0ZScvPgogICAgPC9yZWN0PgogICAgPHJlY3QgeD0nNDYuNScgeT0nNDAnIHdpZHRoPSc3JyBoZWlnaHQ9JzIwJyByeD0nNScgcnk9JzUnIGZpbGw9JyM5Qjk5OUEnCiAgICAgICAgICB0cmFuc2Zvcm09J3JvdGF0ZSg2MCA1MCA1MCkgdHJhbnNsYXRlKDAgLTMwKSc+CiAgICAgICAgICAgICAgICAgcmVwZWF0Q291bnQ9J2luZGVmaW5pdGUnLz4KICAgIDwvcmVjdD4KICAgIDxyZWN0IHg9JzQ2LjUnIHk9JzQwJyB3aWR0aD0nNycgaGVpZ2h0PScyMCcgcng9JzUnIHJ5PSc1JyBmaWxsPScjQTNBMUEyJwogICAgICAgICAgdHJhbnNmb3JtPSdyb3RhdGUoOTAgNTAgNTApIHRyYW5zbGF0ZSgwIC0zMCknPgogICAgPC9yZWN0PgogICAgPHJlY3QgeD0nNDYuNScgeT0nNDAnIHdpZHRoPSc3JyBoZWlnaHQ9JzIwJyByeD0nNScgcnk9JzUnIGZpbGw9JyNBQkE5QUEnCiAgICAgICAgICB0cmFuc2Zvcm09J3JvdGF0ZSgxMjAgNTAgNTApIHRyYW5zbGF0ZSgwIC0zMCknPgogICAgPC9yZWN0PgogICAgPHJlY3QgeD0nNDYuNScgeT0nNDAnIHdpZHRoPSc3JyBoZWlnaHQ9JzIwJyByeD0nNScgcnk9JzUnIGZpbGw9JyNCMkIyQjInCiAgICAgICAgICB0cmFuc2Zvcm09J3JvdGF0ZSgxNTAgNTAgNTApIHRyYW5zbGF0ZSgwIC0zMCknPgogICAgPC9yZWN0PgogICAgPHJlY3QgeD0nNDYuNScgeT0nNDAnIHdpZHRoPSc3JyBoZWlnaHQ9JzIwJyByeD0nNScgcnk9JzUnIGZpbGw9JyNCQUI4QjknCiAgICAgICAgICB0cmFuc2Zvcm09J3JvdGF0ZSgxODAgNTAgNTApIHRyYW5zbGF0ZSgwIC0zMCknPgogICAgPC9yZWN0PgogICAgPHJlY3QgeD0nNDYuNScgeT0nNDAnIHdpZHRoPSc3JyBoZWlnaHQ9JzIwJyByeD0nNScgcnk9JzUnIGZpbGw9JyNDMkMwQzEnCiAgICAgICAgICB0cmFuc2Zvcm09J3JvdGF0ZSgyMTAgNTAgNTApIHRyYW5zbGF0ZSgwIC0zMCknPgogICAgPC9yZWN0PgogICAgPHJlY3QgeD0nNDYuNScgeT0nNDAnIHdpZHRoPSc3JyBoZWlnaHQ9JzIwJyByeD0nNScgcnk9JzUnIGZpbGw9JyNDQkNCQ0InCiAgICAgICAgICB0cmFuc2Zvcm09J3JvdGF0ZSgyNDAgNTAgNTApIHRyYW5zbGF0ZSgwIC0zMCknPgogICAgPC9yZWN0PgogICAgPHJlY3QgeD0nNDYuNScgeT0nNDAnIHdpZHRoPSc3JyBoZWlnaHQ9JzIwJyByeD0nNScgcnk9JzUnIGZpbGw9JyNEMkQyRDInCiAgICAgICAgICB0cmFuc2Zvcm09J3JvdGF0ZSgyNzAgNTAgNTApIHRyYW5zbGF0ZSgwIC0zMCknPgogICAgPC9yZWN0PgogICAgPHJlY3QgeD0nNDYuNScgeT0nNDAnIHdpZHRoPSc3JyBoZWlnaHQ9JzIwJyByeD0nNScgcnk9JzUnIGZpbGw9JyNEQURBREEnCiAgICAgICAgICB0cmFuc2Zvcm09J3JvdGF0ZSgzMDAgNTAgNTApIHRyYW5zbGF0ZSgwIC0zMCknPgogICAgPC9yZWN0PgogICAgPHJlY3QgeD0nNDYuNScgeT0nNDAnIHdpZHRoPSc3JyBoZWlnaHQ9JzIwJyByeD0nNScgcnk9JzUnIGZpbGw9JyNFMkUyRTInCiAgICAgICAgICB0cmFuc2Zvcm09J3JvdGF0ZSgzMzAgNTAgNTApIHRyYW5zbGF0ZSgwIC0zMCknPgogICAgPC9yZWN0Pgo8L3N2Zz4=) no-repeat; + background-size: 100%; +} +@-webkit-keyframes weuiLoading { + 0% { + -webkit-transform: rotate3d(0, 0, 1, 0deg); + transform: rotate3d(0, 0, 1, 0deg); + } + 100% { + -webkit-transform: rotate3d(0, 0, 1, 360deg); + transform: rotate3d(0, 0, 1, 360deg); + } +} +@keyframes weuiLoading { + 0% { + -webkit-transform: rotate3d(0, 0, 1, 0deg); + transform: rotate3d(0, 0, 1, 0deg); + } + 100% { + -webkit-transform: rotate3d(0, 0, 1, 360deg); + transform: rotate3d(0, 0, 1, 360deg); + } +} +.weui-loadmore { + width: 65%; + margin: 1.5em auto; + line-height: 1.6em; + font-size: 14px; + text-align: center; +} +.weui-loadmore__tips { + display: inline-block; + vertical-align: middle; +} +.weui-loadmore_line { + border-top: 1px solid #E5E5E5; + margin-top: 2.4em; +} +.weui-loadmore__tips_in-line { + position: relative; + top: -0.9em; + padding: 0 .55em; + background-color: #FFFFFF; + color: #999999; +} +.weui-loadmore__tips_in-dot { + position: relative; + padding: 0 .16em; + width: 4px; + height: 1.6em; +} +.weui-loadmore__tips_in-dot:before { + content: " "; + position: absolute; + top: 50%; + left: 50%; + margin-top: -1px; + margin-left: -2px; + width: 4px; + height: 4px; + border-radius: 50%; + background-color: #E5E5E5; +} +.weui-panel { + background-color: #FFFFFF; + margin-top: 10px; + position: relative; + overflow: hidden; +} +.weui-panel:first-child { + margin-top: 0; +} +.weui-panel:before { + content: " "; + position: absolute; + left: 0; + top: 0; + right: 0; + height: 1px; + border-top: 1rpx solid #E5E5E5; + color: #E5E5E5; +} +.weui-panel:after { + content: " "; + position: absolute; + left: 0; + bottom: 0; + right: 0; + height: 1px; + border-bottom: 1rpx solid #E5E5E5; + color: #E5E5E5; +} +.weui-panel__hd { + padding: 14px 15px 10px; + color: #999999; + font-size: 13px; + position: relative; +} +.weui-panel__hd:after { + content: " "; + position: absolute; + left: 0; + bottom: 0; + right: 0; + height: 1px; + border-bottom: 1rpx solid #E5E5E5; + color: #E5E5E5; + left: 15px; +} +.weui-media-box { + padding: 15px; + position: relative; +} +.weui-media-box:before { + content: " "; + position: absolute; + left: 0; + top: 0; + right: 0; + height: 1px; + border-top: 1rpx solid #E5E5E5; + color: #E5E5E5; + left: 15px; +} +.weui-media-box:first-child:before { + display: none; +} +.weui-media-box__title { + font-weight: 400; + font-size: 17px; + width: auto; + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; + word-wrap: normal; + word-wrap: break-word; + word-break: break-all; +} +.weui-media-box__desc { + color: #999999; + font-size: 13px; + line-height: 1.2; + overflow: hidden; + text-overflow: ellipsis; + display: -webkit-box; + -webkit-box-orient: vertical; + -webkit-line-clamp: 2; +} +.weui-media-box__info { + margin-top: 15px; + padding-bottom: 5px; + font-size: 13px; + color: #CECECE; + line-height: 1em; + list-style: none; + overflow: hidden; +} +.weui-media-box__info__meta { + float: left; + padding-right: 1em; +} +.weui-media-box__info__meta_extra { + padding-left: 1em; + border-left: 1px solid #CECECE; +} +.weui-media-box__title_in-text { + margin-bottom: 8px; +} +.weui-media-box_appmsg { + display: -webkit-box; + display: -webkit-flex; + display: flex; + -webkit-box-align: center; + -webkit-align-items: center; + align-items: center; +} +.weui-media-box__thumb { + width: 100%; + height: 100%; + vertical-align: top; +} +.weui-media-box__hd_in-appmsg { + margin-right: .8em; + width: 60px; + height: 60px; + line-height: 60px; + text-align: center; +} +.weui-media-box__bd_in-appmsg { + -webkit-box-flex: 1; + -webkit-flex: 1; + flex: 1; + min-width: 0; +} +.weui-media-box_small-appmsg { + padding: 0; +} +.weui-cells_in-small-appmsg { + margin-top: 0; +} +.weui-cells_in-small-appmsg:before { + display: none; +} +.weui-progress { + display: -webkit-box; + display: -webkit-flex; + display: flex; + -webkit-box-align: center; + -webkit-align-items: center; + align-items: center; +} +.weui-progress__bar { + -webkit-box-flex: 1; + -webkit-flex: 1; + flex: 1; +} +.weui-progress__opr { + margin-left: 15px; + font-size: 0; +} +.weui-navbar { + display: -webkit-box; + display: -webkit-flex; + display: flex; + position: absolute; + z-index: 500; + top: 0; + width: 100%; + border-bottom: 1rpx solid #CCCCCC; +} +.weui-navbar__item { + position: relative; + display: block; + -webkit-box-flex: 1; + -webkit-flex: 1; + flex: 1; + padding: 13px 0; + text-align: center; + font-size: 0; +} +.weui-navbar__item.weui-bar__item_on { + color: #1AAD19; +} +.weui-navbar__slider { + position: absolute; + content: " "; + left: 0; + bottom: 0; + width: 6em; + height: 3px; + background-color: #1AAD19; + -webkit-transition: -webkit-transform .3s; + transition: -webkit-transform .3s; + transition: transform .3s; + transition: transform .3s, -webkit-transform .3s; +} +.weui-navbar__title { + display: inline-block; + font-size: 15px; + max-width: 8em; + width: auto; + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; + word-wrap: normal; +} +.weui-tab { + position: relative; + height: 100%; +} +.weui-tab__panel { + box-sizing: border-box; + height: 100%; + padding-top: 50px; + overflow: auto; + -webkit-overflow-scrolling: touch; +} +.weui-search-bar { + position: relative; + padding: 8px 10px; + display: -webkit-box; + display: -webkit-flex; + display: flex; + box-sizing: border-box; + background-color: #EFEFF4; + border-top: 1rpx solid #D7D6DC; + border-bottom: 1rpx solid #D7D6DC; +} +.weui-icon-search { + margin-right: 8px; +} +.weui-icon-search_in-box { + position: absolute; + left: 10px; + top: 7px; +} +.weui-search-bar__text { + display: inline-block; + font-size: 14px; + vertical-align: middle; +} +.weui-search-bar__form { + position: relative; + -webkit-box-flex: 1; + -webkit-flex: auto; + flex: auto; + border-radius: 5px; + background: #FFFFFF; + border: 1rpx solid #E6E6EA; +} +.weui-search-bar__box { + position: relative; + padding-left: 30px; + padding-right: 30px; + width: 100%; + box-sizing: border-box; + z-index: 1; +} +.weui-search-bar__input { + height: 28px; + line-height: 28px; + font-size: 14px; +} +.weui-icon-clear { + position: absolute; + top: 0; + right: 0; + padding: 7px 8px; + font-size: 0; +} +.weui-search-bar__label { + position: absolute; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 2; + border-radius: 3px; + text-align: center; + color: #9B9B9B; + background: #FFFFFF; + line-height: 28px; +} +.weui-search-bar__cancel-btn { + margin-left: 10px; + line-height: 28px; + color: #09BB07; + white-space: nowrap; +} diff --git a/liferestartWX/pages/.DS_Store b/liferestartWX/pages/.DS_Store new file mode 100644 index 0000000..9f240e9 Binary files /dev/null and b/liferestartWX/pages/.DS_Store differ diff --git a/liferestartWX/pages/index.js b/liferestartWX/pages/index.js new file mode 100644 index 0000000..274a8c2 --- /dev/null +++ b/liferestartWX/pages/index.js @@ -0,0 +1,44 @@ +// miniprogram/pages/liferestart/index.js +Page({ + + /** + * 页面的初始数据 + */ + data: { + + }, + + /** + * 生命周期函数--监听页面加载 + */ + onLoad: function (options) { + + wx.showShareMenu({ + withShareTicket: true, + menus: ['shareAppMessage', 'shareTimeline'] + }) + }, + toRanking(e) { + wx.navigateTo({ + url: 'ranking' + }) + }, + toTalents(e) { + wx.navigateTo({ + url: 'talents' + }) + }, + onShareTimeline(e) { + return { + title: "人生重开模拟器", + imageUrl: "../../../images/liferestart_cover.jpg", + } + }, + onShareAppMessage: function () { + return { + title: '人生重开模拟器', + imageUrl: '../../../images/liferestart_cover.jpg', + path: '/pages/index/index', + } + }, +}) \ No newline at end of file diff --git a/liferestartWX/pages/index.json b/liferestartWX/pages/index.json new file mode 100644 index 0000000..ace6e8f --- /dev/null +++ b/liferestartWX/pages/index.json @@ -0,0 +1,8 @@ +{ + "usingComponents": { + "wux-icon": "/utils/wux/icon/index", + "wux-button": "/utils/wux/button/index", + "wux-wing-blank": "/utils/wux/wing-blank/index", + "wux-white-space": "/utils/wux/white-space/index" + } +} \ No newline at end of file diff --git a/liferestartWX/pages/index.wxml b/liferestartWX/pages/index.wxml new file mode 100644 index 0000000..0a38164 --- /dev/null +++ b/liferestartWX/pages/index.wxml @@ -0,0 +1,19 @@ + + + 人生重开模拟器 + 这垃圾人生一秒也不想呆了 + + + + + + + 立即重开 + + + + \ No newline at end of file diff --git a/liferestartWX/pages/index.wxss b/liferestartWX/pages/index.wxss new file mode 100644 index 0000000..ec1b810 --- /dev/null +++ b/liferestartWX/pages/index.wxss @@ -0,0 +1,80 @@ +/* miniprogram/pages/liferestart/index.wxss */ + +.container { + height: 100%; + display: flex; + justify-content: center; + flex-direction: column; + align-items: center; + padding: 100rpx 50rpx; + box-sizing: border-box; + background-color: #222831; + color: #fff; +} + +.title1 { + font-size: 82rpx; + color: white; + background-size: cover; +} + +.title2 { + font-size: 42rpx; + color: white; + background-size: cover; +} +.btn-view { + display:flex; + justify-content: center; + flex-direction: column; + align-items: center; +} +.btn { + width: 400rpx; + height: 400rpx; + + background-image: -webkit-radial-gradient(45px 45px, circle cover, #99CC33, #003366); + + animation-name: spin; + animation-duration: 3s; /* 3 seconds */ + animation-iteration-count: infinite; + animation-timing-function: linear; + border-radius: 50%; +} +.btn-text { + width: 400rpx; + height: 400rpx; + text-align: center; + font-size: 82rpx; + line-height: 400rpx; + color: white; +} + + +.btn2-view { + position:fixed; + bottom:0; + left:0; + padding-left: 50px; + padding-bottom: 50px; +} +.btn2 { + width: 200rpx; + height: 200rpx; + + background-image: -webkit-radial-gradient(45px 45px, circle cover, #99CC33, #003366); + + animation-name: spin; + animation-duration: 3s; /* 3 seconds */ + animation-iteration-count: infinite; + animation-timing-function: linear; + border-radius: 50%; +} +.btn2-text { + width: 200rpx; + height: 200rpx; + text-align: center; + font-size: 42rpx; + line-height: 200rpx; + color: white; +} diff --git a/liferestartWX/pages/property.js b/liferestartWX/pages/property.js new file mode 100644 index 0000000..7aa92e7 --- /dev/null +++ b/liferestartWX/pages/property.js @@ -0,0 +1,170 @@ +// miniprogram/pages/liferestart/property.js +import { + $wuxToptips +} from '../utils/wux/index'; +import {computeTalentsStatus, computeUseableProp, randomProp} from '../utils/liferestart/data/dataUtils.js'; +Page({ + + /** + * 页面的初始数据 + */ + data: { + propertyResidue : 0, + propertyCHR : 0, + propertyINT : 0, + propertySTR : 0, + propertyMNY : 0, + propertyCHRMAX : 10, + propertyINTMAX : 10, + propertySTRMAX : 10, + propertyMNYMAX : 10, + propertyMaxInit : 0, + selectedTalentsID : [], + selectedTalents : [] + }, + /** + * 生命周期函数--监听页面加载 + */ + onLoad: function (options) { + wx.showShareMenu({ + withShareTicket: true, + menus: ['shareAppMessage', 'shareTimeline'] + }) + this.computeProperty() + }, + + randomProperty(e) { + const arr = randomProp(this.data.propertyMaxInit, [10,10,10,10]) + // console.log('randomProperty', t, arr) + this.setData({ + propertyCHR : 10 - arr[0], + propertyINT : 10 - arr[1], + propertySTR : 10 - arr[2], + propertyMNY : 10 - arr[3], + propertyCHRMAX : 10 - arr[0], + propertyINTMAX : 10 - arr[1], + propertySTRMAX : 10 - arr[2], + propertyMNYMAX : 10 - arr[3], + propertyResidue : 0 + + }) + }, + + bron(e) { + const tData = this.data + if (tData.propertyResidue > 0) { + $wuxToptips().error({ + hidden: false, + text: '你还有'+tData.propertyResidue+'属性点没有分配完', + duration: 5000, + success() {}, + }) + return + } + + wx.setStorage({ + key: 'propertyCHR', + data: tData.propertyCHR + }) + wx.setStorage({ + key: 'propertyINT', + data: tData.propertyINT + }) + wx.setStorage({ + key: 'propertySTR', + data: tData.propertySTR + }) + wx.setStorage({ + key: 'propertyMNY', + data: tData.propertyMNY + }) + + wx.redirectTo({ + url: 'trajectory' + }) + }, + + onChange(e) { + const id = e.currentTarget.id + const value = e.detail.value + const tdata = this.data + switch (id) { + case 'propertyCHR': + this.setData({ + propertyCHR : value + }) + break + case 'propertyINT': + this.setData({ + propertyINT : value + }) + break + case 'propertySTR': + this.setData({ + propertySTR : value + }) + break + case 'propertyMNY': + this.setData({ + propertyMNY : value + }) + break + } + // console.log(tdata.propertyCHR + // , tdata.propertyINT + // , tdata.propertySTR + // , tdata.propertyMNY) + var max = tdata.propertyMaxInit + - tdata.propertyCHR + - tdata.propertyINT + - tdata.propertySTR + - tdata.propertyMNY + max = max < 0 ? 0 : max + // console.log(id, value, max) + this.setData({ + propertyResidue : max < 0 ? 0 : max, + propertyCHRMAX : max + tdata.propertyCHR >= 10? 10 : max + tdata.propertyCHR, + propertyINTMAX : max + tdata.propertyINT >= 10? 10 : max + tdata.propertyINT, + propertySTRMAX : max + tdata.propertySTR >= 10? 10 : max + tdata.propertySTR, + propertyMNYMAX : max + tdata.propertyMNY >= 10? 10 : max + tdata.propertyMNY, + }) + // console.log(tdata.propertyCHRMAX,tdata.propertyINTMAX,tdata.propertySTRMAX,tdata.propertyMNYMAX) + }, + + computeProperty: function() { + const selectedTalents = wx.getStorageSync('selectedTalents') + const selectedTalentsID = wx.getStorageSync('selectedTalentsID') + console.log('selectedTalents', selectedTalents) + var status = computeTalentsStatus(selectedTalents) + // console.log('status', status) + var proNum = computeUseableProp(20, status) + this.setData({ + propertyResidue: proNum, + propertyMaxInit: proNum, + selectedTalents: selectedTalents, + selectedTalentsID: selectedTalentsID + }) + // console.log('proNum', proNum) + }, + + onShareTimeline(e) { + return { + title: "人生重开模拟器", + imageUrl: "../../../images/liferestart_cover.jpg", + } + }, + onShareAppMessage: function () { + return { + title: '人生重开模拟器', + imageUrl: '../../../images/liferestart_cover.jpg', + path: '/pages/index/index', + } + }, + // change(prop, value) { + // if(Array.isArray(value)) { + // for(const v of value) + // this.change(prop, Number(v)); + // return; + // } + // } +}) \ No newline at end of file diff --git a/liferestartWX/pages/property.json b/liferestartWX/pages/property.json new file mode 100644 index 0000000..c1ba21c --- /dev/null +++ b/liferestartWX/pages/property.json @@ -0,0 +1,11 @@ +{ + "usingComponents": { + "wux-toptips": "/utils/wux/toptips/index", + "wux-button": "/utils/wux/button/index", + "wux-cell-group": "/utils/wux/cell-group/index", + "wux-cell": "/utils/wux/cell/index", + "wux-input-number": "/utils/wux/input-number/index", + "wux-wing-blank": "/utils/wux/wing-blank/index", + "wux-white-space": "/utils/wux/white-space/index" + } +} \ No newline at end of file diff --git a/liferestartWX/pages/property.wxml b/liferestartWX/pages/property.wxml new file mode 100644 index 0000000..3bb51ec --- /dev/null +++ b/liferestartWX/pages/property.wxml @@ -0,0 +1,44 @@ + + + + + + + 调整初始属性 + 可用属性点:{{propertyResidue}} + + + + + + + + + + + + + + + + + + + 已选天赋 + + + {{item.name}} ({{item.description}}) + + + 随机分配 + 开启新人生 + + \ No newline at end of file diff --git a/liferestartWX/pages/property.wxss b/liferestartWX/pages/property.wxss new file mode 100644 index 0000000..95eb817 --- /dev/null +++ b/liferestartWX/pages/property.wxss @@ -0,0 +1,72 @@ +/* miniprogram/pages/liferestart/property.wxss */ +/* miniprogram/pages/liferestart/index.wxss */ +@import '../utils/wux/styles/index.wxss'; +.container { + justify-content: center; + flex-direction: column; + align-items: center; + /* padding: 50rpx 100rpx; */ + box-sizing: border-box; + background-color: #222831; + /* color: #fff; */ +} + +.checkbox { + position: static !important; +} + +.title1 { + font-size: 82rpx; + color: white; + background-size: cover; +} + +.title2 { + font-size: 42rpx; + color: white; + background-size: cover; +} + +.input { + width: 120rpx !important; + border-color: transparent !important; +} + +.sub, +.add { + width: 52rpx !important; + border: 2rpx solid #ececec !important; + border-radius: 10rpx !important; +} + +.talentsTable{ + width: 100%; + position: relative; + border: 1px #ccc solid; + display: inline-block; + margin: 0.1rem 2px; + font-size: 42rpx; + text-align: center; + border-radius: 0.2rem; + color: white; +} + + + + +.grade0b { + background-color: #464646; + border: #f8f8f8 2px solid !important; +} +.grade1b { + background-color: #6495ed; + border: #f8f8f8 2px solid !important; +} +.grade2b { + background-color: #e2a7ff; + border: #f8f8f8 2px solid !important; +} +.grade3b { + background-color: #ffa07a; + border: #f8f8f8 2px solid !important; +} diff --git a/liferestartWX/pages/ranking.js b/liferestartWX/pages/ranking.js new file mode 100644 index 0000000..c6db8fa --- /dev/null +++ b/liferestartWX/pages/ranking.js @@ -0,0 +1,45 @@ +// miniprogram/page/liferestart/pages/ranking.js +Page({ + + /** + * 页面的初始数据 + */ + data: { + rankingAGE: [],//最长寿 + rankingSPR: [],//最快乐 + rankingMNY: [],//最有钱 + rankingSTR: [],//最健康 + rankingINT: [],//最聪明 + rankingCHR: [],//最漂亮 + rankingSCO: [],//最NB + }, + + loadRanking() { + console.log('loadRanking') + wx.cloud.callFunction({ + name: 'ranking', + data: { + handle: 'getRankingAll' + } + }).then(res => { + console.log('ranking page ', res.result) + this.setData({ + rankingAGE: res.result.recordAGE.data,//最长寿 + rankingSPR: res.result.recordSPR.data,//最快乐 + rankingMNY: res.result.recordMNY.data,//最有钱 + rankingSTR: res.result.recordSTR.data,//最健康 + rankingINT: res.result.recordINT.data,//最聪明 + rankingCHR: res.result.recordCHR.data,//最漂亮 + rankingSCO: res.result.recordFinal.data,//最NB + }) + }) + }, + + /** + * 生命周期函数--监听页面加载 + */ + onLoad: function (options) { + this.loadRanking() + }, + +}) \ No newline at end of file diff --git a/liferestartWX/pages/ranking.json b/liferestartWX/pages/ranking.json new file mode 100644 index 0000000..60d3baa --- /dev/null +++ b/liferestartWX/pages/ranking.json @@ -0,0 +1,9 @@ +{ + "usingComponents": { + "wux-button": "/utils/wux/button/index", + "wux-row": "/utils/wux/row/index", + "wux-col": "/utils/wux/col/index", + "wux-wing-blank": "/utils/wux/wing-blank/index", + "wux-white-space": "/utils/wux/white-space/index" + } +} \ No newline at end of file diff --git a/liferestartWX/pages/ranking.wxml b/liferestartWX/pages/ranking.wxml new file mode 100644 index 0000000..8fba902 --- /dev/null +++ b/liferestartWX/pages/ranking.wxml @@ -0,0 +1,29 @@ + + + + + 内卷世界 + + + +