默认提交
Showing
11 changed files
with
71 additions
and
187 deletions
src/pages/authorize-nav/authorize.js
deleted
100755 → 0
1 | let app = getApp(); | ||
2 | |||
3 | Page({ | ||
4 | data: { | ||
5 | barHeight: app.globalData.barHeight, | ||
6 | navbarData: { | ||
7 | showCapsule: 0, //是否显示左上角图标 1表示显示 0表示不显示 | ||
8 | title: '微信授权' //导航栏 中间的标题 | ||
9 | }, | ||
10 | loginData: null, | ||
11 | authorized: false, | ||
12 | canIUse: wx.canIUse('button.open-type.getUserInfo'), | ||
13 | parentMemberCode: "", | ||
14 | }, | ||
15 | onLoad(options) {}, | ||
16 | onReady() { | ||
17 | app.store.clear("sessionId"); | ||
18 | let _this = this; | ||
19 | wx.login({ | ||
20 | success: function (res) { | ||
21 | _this.data.loginData = res; | ||
22 | } | ||
23 | }); | ||
24 | }, | ||
25 | bindGetUserInfo(e) { | ||
26 | wx.showLoading(); | ||
27 | this.getUserInfo(e.detail); | ||
28 | }, | ||
29 | getUserInfo(e) { | ||
30 | let _this = this; | ||
31 | app.globalData.userInfo = e.userInfo; | ||
32 | // console.log("loginData:",_this.data.loginData); | ||
33 | app.post({ | ||
34 | url: app.api.register, | ||
35 | sid: false, | ||
36 | data: { | ||
37 | encryptedData: e.encryptedData, | ||
38 | iv: e.iv, | ||
39 | code: _this.data.loginData.code, | ||
40 | parentMemberCode: _this.data.parentMemberCode, | ||
41 | } | ||
42 | }).then((res2) => { | ||
43 | app.store.setItem('sessionId', res2.sessionId); | ||
44 | _this.setData({ | ||
45 | authorized: true | ||
46 | }) | ||
47 | _this.toIndex(); | ||
48 | }).catch((err) => { | ||
49 | console.log("@authorize || err:", err); | ||
50 | }) | ||
51 | }, | ||
52 | toIndex() { | ||
53 | console.log("@authorize || toIndex "); | ||
54 | setTimeout(() => { | ||
55 | app.router.push({ | ||
56 | path: "index", | ||
57 | query: {}, | ||
58 | openType: "redirect" | ||
59 | }) | ||
60 | wx.hideLoading(); | ||
61 | }, 2000); | ||
62 | } | ||
63 | }) |
1 | @import '../../assets/scss/mixins'; | ||
2 | |||
3 | .page { | ||
4 | position: relative; | ||
5 | overflow: hidden; | ||
6 | |||
7 | .bgc { | ||
8 | // background-color: transparent; | ||
9 | // background-color: black; | ||
10 | background-color: #fafafc; | ||
11 | } | ||
12 | |||
13 | |||
14 | .main { | ||
15 | |||
16 | position: relative; | ||
17 | |||
18 | .top-space { | ||
19 | height: 60px; | ||
20 | } | ||
21 | |||
22 | |||
23 | .login { | ||
24 | position: relative; | ||
25 | width: 650px; | ||
26 | margin: 0 auto; | ||
27 | text-align: center; | ||
28 | |||
29 | &-logo { | ||
30 | width: 140px; | ||
31 | height: 140px; | ||
32 | } | ||
33 | |||
34 | &-name { | ||
35 | margin-top: 32px; | ||
36 | font-size: 32px; | ||
37 | color: #333333; | ||
38 | } | ||
39 | |||
40 | &-line { | ||
41 | margin-top: 70px; | ||
42 | width: 650px; | ||
43 | height: 2px; | ||
44 | background-color: #eaeaec; | ||
45 | } | ||
46 | |||
47 | &-title { | ||
48 | margin-top: 40px; | ||
49 | font-size: 32px; | ||
50 | text-align: left; | ||
51 | color: #333333; | ||
52 | } | ||
53 | |||
54 | |||
55 | &-tips { | ||
56 | margin-top: 28px; | ||
57 | font-size: 26px; | ||
58 | text-align: left; | ||
59 | color: #666666; | ||
60 | } | ||
61 | |||
62 | &-btn { | ||
63 | margin-top: 102px; | ||
64 | width: 650px; | ||
65 | height: 90px; | ||
66 | line-height: 90px; | ||
67 | border-radius: 8px; | ||
68 | background-color: #00c200; | ||
69 | font-size: 32px; | ||
70 | color: #ffffff; | ||
71 | } | ||
72 | |||
73 | } | ||
74 | |||
75 | } | ||
76 | |||
77 | } |
1 | <navbar navbar-data='{{navbarData}}'></navbar> | ||
2 | <view style='height: {{barHeight}}px'></view> | ||
3 | <view class="page-authorize page"> | ||
4 | <view class="app__bgc bgc"></view> | ||
5 | <view class="app__bg bg"></view> | ||
6 | <!-- <view class="app__top-shadow"></view> --> | ||
7 | <view class="app__content main"> | ||
8 | <view class="top-space"></view> | ||
9 | <view class="login"> | ||
10 | <image class="login-logo" src="../../image/logo.png" mode="aspectFit" /> | ||
11 | <view class="login-name">美赞臣</view> | ||
12 | <view class="login-line"></view> | ||
13 | <view class="login-title">完整体验小程序功能,需要您的微信授权哦</view> | ||
14 | <view class="login-tips">· 获取您的公开信息(昵称、头像等)</view> | ||
15 | <button type="default" class="login-btn" wx:if="{{!authorized}}" open-type="getUserInfo" bindgetuserinfo="bindGetUserInfo"> | ||
16 | 确认授权 | ||
17 | </button> | ||
18 | </view> | ||
19 | </view> | ||
20 | </view> |
... | @@ -105,20 +105,19 @@ | ... | @@ -105,20 +105,19 @@ |
105 | 105 | ||
106 | .tit { | 106 | .tit { |
107 | font-size: 40px; | 107 | font-size: 40px; |
108 | height: 80px; | 108 | min-height: 120px; |
109 | line-height: 80px; | ||
110 | color: #ffffff; | 109 | color: #ffffff; |
111 | @extend .bb; | 110 | @extend .bb; |
112 | padding: 0 24px; | 111 | padding: 0 24px; |
113 | position: absolute; | 112 | position: absolute; |
114 | width: 100%; | 113 | width: 100%; |
115 | bottom: 0; | 114 | bottom: 0; |
116 | @include ellipsis(1); | 115 | @include ellipsis(2); |
117 | } | 116 | } |
118 | 117 | ||
119 | .tit-bg { | 118 | .tit-bg { |
120 | opacity: .6; | 119 | opacity: .6; |
121 | height: 80px; | 120 | height: 120px; |
122 | color: #ffffff; | 121 | color: #ffffff; |
123 | position: absolute; | 122 | position: absolute; |
124 | width: 100%; | 123 | width: 100%; |
... | @@ -129,18 +128,19 @@ | ... | @@ -129,18 +128,19 @@ |
129 | 128 | ||
130 | .play { | 129 | .play { |
131 | @extend .fcc; | 130 | @extend .fcc; |
132 | width: 132px; | 131 | width: 120px; |
133 | height: 132px; | 132 | height: 120px; |
134 | border-radius: 132px; | 133 | border-radius: 120px; |
134 | border: solid #ffffff 6px; | ||
135 | font-weight: normal; | 135 | font-weight: normal; |
136 | position: absolute; | 136 | position: absolute; |
137 | left: 0; | 137 | left: 0; |
138 | right: 0; | 138 | right: 0; |
139 | top: 52px; | 139 | top: 32px; |
140 | margin: 0 auto; | 140 | margin: 0 auto; |
141 | text-align: center; | 141 | text-align: center; |
142 | font-weight: bold; | 142 | font-weight: bold; |
143 | background-color: rgba($color: #000000, $alpha: 0.7); | 143 | background-color: rgba($color: #000000, $alpha: 0.4); |
144 | 144 | ||
145 | .iconfont { | 145 | .iconfont { |
146 | font-size: 48px; | 146 | font-size: 48px; | ... | ... |
... | @@ -83,20 +83,19 @@ | ... | @@ -83,20 +83,19 @@ |
83 | 83 | ||
84 | .tit { | 84 | .tit { |
85 | font-size: 40px; | 85 | font-size: 40px; |
86 | height: 80px; | 86 | min-height: 120px; |
87 | line-height: 80px; | ||
88 | color: #ffffff; | 87 | color: #ffffff; |
89 | @extend .bb; | 88 | @extend .bb; |
90 | padding: 0 24px; | 89 | padding: 0 24px; |
91 | position: absolute; | 90 | position: absolute; |
92 | width: 100%; | 91 | width: 100%; |
93 | bottom: 0; | 92 | bottom: 0; |
94 | @include ellipsis(1); | 93 | @include ellipsis(2); |
95 | } | 94 | } |
96 | 95 | ||
97 | .tit-bg { | 96 | .tit-bg { |
98 | opacity: .6; | 97 | opacity: .6; |
99 | height: 80px; | 98 | height: 120px; |
100 | color: #ffffff; | 99 | color: #ffffff; |
101 | position: absolute; | 100 | position: absolute; |
102 | width: 100%; | 101 | width: 100%; |
... | @@ -107,18 +106,19 @@ | ... | @@ -107,18 +106,19 @@ |
107 | 106 | ||
108 | .play { | 107 | .play { |
109 | @extend .fcc; | 108 | @extend .fcc; |
110 | width: 132px; | 109 | width: 120px; |
111 | height: 132px; | 110 | height: 120px; |
112 | border-radius: 132px; | 111 | border-radius: 120px; |
112 | border: solid #ffffff 6px; | ||
113 | font-weight: normal; | 113 | font-weight: normal; |
114 | position: absolute; | 114 | position: absolute; |
115 | left: 0; | 115 | left: 0; |
116 | right: 0; | 116 | right: 0; |
117 | top: 72px; | 117 | top: 32px; |
118 | margin: 0 auto; | 118 | margin: 0 auto; |
119 | text-align: center; | 119 | text-align: center; |
120 | font-weight: bold; | 120 | font-weight: bold; |
121 | background-color: rgba($color: #000000, $alpha: 0.7); | 121 | background-color: rgba($color: #000000, $alpha: 0.4); |
122 | 122 | ||
123 | .iconfont { | 123 | .iconfont { |
124 | font-size: 48px; | 124 | font-size: 48px; | ... | ... |
... | @@ -58,6 +58,9 @@ Page({ | ... | @@ -58,6 +58,9 @@ Page({ |
58 | primaryCode: "", | 58 | primaryCode: "", |
59 | }); | 59 | }); |
60 | }, | 60 | }, |
61 | onShow() { | ||
62 | this.checkAuth(); | ||
63 | }, | ||
61 | 64 | ||
62 | /** | 65 | /** |
63 | * 基础方法 | 66 | * 基础方法 |
... | @@ -170,6 +173,29 @@ Page({ | ... | @@ -170,6 +173,29 @@ Page({ |
170 | }, | 173 | }, |
171 | 174 | ||
172 | /** | 175 | /** |
176 | * 检查是否授权 | ||
177 | */ | ||
178 | checkAuth() { | ||
179 | let _this = this; | ||
180 | wx.getSetting({ | ||
181 | success(res) { | ||
182 | console.log("scope:", res); | ||
183 | if (res.authSetting['scope.userInfo']) { | ||
184 | // 已经授权 | ||
185 | } else { | ||
186 | //用户没有授权 | ||
187 | wx.login({ | ||
188 | success(res) { | ||
189 | app.store.setItem('wxcode', res.code); | ||
190 | _this.showAuth(); | ||
191 | } | ||
192 | }); | ||
193 | } | ||
194 | } | ||
195 | }); | ||
196 | }, | ||
197 | |||
198 | /** | ||
173 | * 隐藏蒙层 | 199 | * 隐藏蒙层 |
174 | */ | 200 | */ |
175 | hideMask() { | 201 | hideMask() { | ... | ... |
... | @@ -8,7 +8,10 @@ | ... | @@ -8,7 +8,10 @@ |
8 | background-color: #af3541; | 8 | background-color: #af3541; |
9 | } | 9 | } |
10 | 10 | ||
11 | .bg {} | 11 | .bg { |
12 | width: 100%; | ||
13 | height: auto; | ||
14 | } | ||
12 | 15 | ||
13 | .main { | 16 | .main { |
14 | .top-space { | 17 | .top-space { |
... | @@ -51,7 +54,7 @@ | ... | @@ -51,7 +54,7 @@ |
51 | 54 | ||
52 | .reward { | 55 | .reward { |
53 | width: $contentWidth; | 56 | width: $contentWidth; |
54 | margin: 124px auto 0; | 57 | margin: 24px auto 0; |
55 | 58 | ||
56 | 59 | ||
57 | &-wrap { | 60 | &-wrap { |
... | @@ -65,7 +68,23 @@ | ... | @@ -65,7 +68,23 @@ |
65 | } | 68 | } |
66 | } | 69 | } |
67 | } | 70 | } |
71 | } | ||
72 | } | ||
73 | |||
74 | .tips{ | ||
75 | font-size: 28px; | ||
76 | color: #ffe6a3; | ||
77 | text-align: center; | ||
78 | width: 100%; | ||
79 | } | ||
68 | 80 | ||
81 | .tips1{ | ||
82 | margin-top: 36px; | ||
69 | } | 83 | } |
84 | |||
85 | .tips2 { | ||
86 | |||
87 | position: fixed; | ||
88 | bottom: 48px; | ||
70 | } | 89 | } |
71 | } | 90 | } | ... | ... |
... | @@ -9,6 +9,7 @@ | ... | @@ -9,6 +9,7 @@ |
9 | <image class="portrait-bg" mode="widthFix" src="../../image/logo.jpeg" /> | 9 | <image class="portrait-bg" mode="widthFix" src="../../image/logo.jpeg" /> |
10 | <!-- <open-data class="avatar" type="userAvatarUrl"></open-data> --> | 10 | <!-- <open-data class="avatar" type="userAvatarUrl"></open-data> --> |
11 | </view> | 11 | </view> |
12 | <view class="tips tips1">赞赏家有儿孙</view> | ||
12 | <view class="reward"> | 13 | <view class="reward"> |
13 | <view class="reward-wrap"> | 14 | <view class="reward-wrap"> |
14 | <image bindtap="onRewardHandler" data-data="{{item}}" class="reward-wrap-item" wx:for="{{rewardList}}" wx:key="{{index}}" mode="widthFix" src="{{'../../image/reward/m-'+item.price+'.png'}}" /> | 15 | <image bindtap="onRewardHandler" data-data="{{item}}" class="reward-wrap-item" wx:for="{{rewardList}}" wx:key="{{index}}" mode="widthFix" src="{{'../../image/reward/m-'+item.price+'.png'}}" /> |
... | @@ -16,4 +17,8 @@ | ... | @@ -16,4 +17,8 @@ |
16 | </view> | 17 | </view> |
17 | </view> | 18 | </view> |
18 | </view> | 19 | </view> |
20 | <view class="tips tips2">感谢红包鼓励,我们继续生产好内容!</view> | ||
19 | </view> | 21 | </view> |
22 | <van-popup show="{{ authorizeVisible }}"> | ||
23 | <authorize-comp bind:evtcomp="evtcomp"></authorize-comp> | ||
24 | </van-popup> | ... | ... |
-
Please register or sign in to post a comment