Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
言程序plus
uni-starter
提交
ee8f1922
U
uni-starter
项目概览
言程序plus
/
uni-starter
与 Fork 源项目一致
Fork自
DCloud / uni-starter
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
U
uni-starter
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
ee8f1922
编写于
4月 15, 2021
作者:
L
linju
浏览文件
操作
浏览文件
下载
差异文件
123
上级
00c49e97
c53dba25
变更
16
隐藏空白更改
内联
并排
Showing
16 changed file
with
408 addition
and
324 deletion
+408
-324
baseapp.config.json
baseapp.config.json
+11
-1
common/appInit.js
common/appInit.js
+70
-41
pages.json
pages.json
+18
-9
pages/common/webview/webview.vue
pages/common/webview/webview.vue
+26
-0
pages/list/news-list.vue
pages/list/news-list.vue
+7
-4
pages/ucenter/about/about.vue
pages/ucenter/about/about.vue
+76
-205
pages/ucenter/agree-list/privacy/privacy.html
pages/ucenter/agree-list/privacy/privacy.html
+71
-0
pages/ucenter/agree-list/service/service.html
pages/ucenter/agree-list/service/service.html
+48
-0
pages/ucenter/edit/edit.vue
pages/ucenter/edit/edit.vue
+1
-3
pages/ucenter/settings/settings.vue
pages/ucenter/settings/settings.vue
+44
-33
pages/ucenter/ucenter.vue
pages/ucenter/ucenter.vue
+6
-7
uni_modules/uni-id/uniCloud/cloudfunctions/common/uni-id/package-lock.json
...d/uniCloud/cloudfunctions/common/uni-id/package-lock.json
+2
-19
uni_modules/uni-id/uniCloud/cloudfunctions/common/uni-id/package.json
...uni-id/uniCloud/cloudfunctions/common/uni-id/package.json
+1
-1
uni_modules/uni-nodata/components/uni-nodata/uni-nodata.nvue
uni_modules/uni-nodata/components/uni-nodata/uni-nodata.nvue
+1
-0
uni_modules/uni-quick-login/uniCloud/cloudfunctions/user-center/index.js
...-quick-login/uniCloud/cloudfunctions/user-center/index.js
+5
-0
uni_modules/uni-quick-login/uniCloud/cloudfunctions/user-center/package-lock.json
...gin/uniCloud/cloudfunctions/user-center/package-lock.json
+21
-1
未找到文件。
baseapp.config.json
浏览文件 @
ee8f1922
{
"router"
:{
"needLogin"
:[
"/pages/ucenter/edit/edit"
"/pages/ucenter/edit/edit"
,
"/uni_modules/uni-login-page/pages/index/pwd-retrieve"
]
},
"aboutus"
:{
"appName"
:
"base-app"
,
"company"
:
"数字天堂(北京)网络技术有限公司"
,
"slogan"
:
"为开发而生"
,
"agreement"
:{
"privacy"
:
"https://uniapp.dcloud.io/"
,
"business"
:
"https://uniapp.dcloud.io/"
}
}
}
\ No newline at end of file
common/appInit.js
浏览文件 @
ee8f1922
import
checkUpdate
from
'
@/uni_modules/uni-upgrade-center-app/utils/check-update
'
;
import
checkUpdate
from
'
@/uni_modules/uni-upgrade-center-app/utils/check-update
'
;
import
baseappConfig
from
'
@/baseapp.config.json
'
;
export
default
function
()
{
// 初始化appVersion
...
...
@@ -8,11 +9,50 @@ export default function() {
checkUpdate
();
//自定义路由拦截
setRouter
()
const
{
"
router
"
:{
needLogin
}}
=
baseappConfig
//需要登陆的页面
changeAction
([
"
navigateTo
"
,
"
redirectTo
"
,
"
reLaunch
"
,
"
switchTab
"
],
{
before_action
:
e
=>
{
let
token
=
uni
.
getStorageSync
(
'
uni-id-token
'
)
if
(
needLogin
.
includes
(
e
.
url
)
&&
token
==
''
)
{
console
.
log
(
'
该页面需要登陆,即将跳转到login页面
'
);
uni
.
showToast
({
title
:
'
该页面需要登陆,即将跳转到login页面
'
,
icon
:
'
none
'
})
uni
.
redirectTo
({
url
:
"
/uni_modules/uni-login-page/pages/index/index
"
})
return
false
}
return
true
}
})
//提示网络变化
eventListenerNetwork
()
/*
当某个权限调用失败
1.先检测手机的该模块是否打开
2.检测当前应用是否被授权了该模块对应的权限
提示,并点击跳转到设置
*/
// #ifndef H5
// changeAction('chooseImage', {
// after_action: e => {
// console.log('changeAction', e);
// if(e.errCode === 11){
// uni.showModal({
// content: '无权限',
// confirmText:"前往设置",
// success(e) {
// if(e.confirm){
// permision.gotoAppPermissionSetting()
// }
// }
// });
// }
// }
// })
// #endif
}
/**
* // 初始化appVersion
...
...
@@ -34,44 +74,6 @@ function initAppVersion() {
});
// #endif
}
//用于拦截路由
import
baseappConfig
from
'
@/baseapp.config.json
'
;
console
.
log
(
'
baseappConfig
'
,
baseappConfig
);
const
{
"
router
"
:{
needLogin
}}
=
baseappConfig
//需要登陆的页面
function
setRouter
()
{
let
before_action
=
e
=>
{
let
res
=
true
let
token
=
uni
.
getStorageSync
(
'
uni-id-token
'
)
if
(
needLogin
.
includes
(
e
.
url
)
&&
token
==
''
)
{
res
=
false
console
.
log
(
'
该页面需要登陆,即将跳转到login页面
'
);
uni
.
redirectTo
({
url
:
"
/uni_modules/uni-login-page/pages/index/index
"
})
}
return
res
}
let
before_after
=
e
=>
{
console
.
log
(
'
跳转之后
'
);
}
let
actions
=
[
"
navigateTo
"
,
"
redirectTo
"
,
"
reLaunch
"
,
"
switchTab
"
]
actions
.
forEach
(
action
=>
{
let
old_action
=
uni
[
action
]
uni
[
action
]
=
e
=>
{
//console.log(e);
if
(
before_action
(
e
))
{
old_action
(
e
)
before_after
(
e
)
}
}
})
uni
.
reLaunch
({
url
:
'
/pages/grid/grid
'
})
}
// 设备网络状态变化事件
function
eventListenerNetwork
()
{
...
...
@@ -100,4 +102,31 @@ function eventListenerNetwork () {
});
}
});
}
function
changeAction
(
actions
,
{
before_action
,
after_action
})
{
if
(
typeof
actions
==
'
string
'
){
actions
=
[
actions
]
}
if
(
!
before_action
)
{
before_action
=
()
=>
true
}
actions
.
forEach
(
action
=>
{
let
old_action
=
uni
[
action
]
uni
[
action
]
=
e
=>
{
if
(
before_action
(
e
))
{
console
.
log
(
after_action
);
if
(
after_action
)
{
var
compose
=
function
(
f
,
g
)
{
return
function
(
x
)
{
return
f
(
x
,
g
(
x
));
};
};
e
.
complete
=
compose
(
e
.
complete
,
after_action
)
}
old_action
(
e
)
}
}
})
}
\ No newline at end of file
pages.json
浏览文件 @
ee8f1922
...
...
@@ -188,15 +188,24 @@
}
}
,{
"path"
:
"pages/test/test"
,
"style"
:
{
"navigationBarTitleText"
:
""
,
"enablePullDownRefresh"
:
false
}
}
,{
"path"
:
"pages/test/test"
,
"style"
:
{
"navigationBarTitleText"
:
""
,
"enablePullDownRefresh"
:
false
}
}
,{
"path"
:
"pages/common/webview/webview"
,
"style"
:
{
"navigationBarTitleText"
:
""
,
"enablePullDownRefresh"
:
false
}
}
],
"globalStyle"
:
{
"navigationBarTextStyle"
:
"black"
,
...
...
pages/common/webview/webview.vue
0 → 100644
浏览文件 @
ee8f1922
<
template
>
<view>
<web-view
:src=
"url"
></web-view>
</view>
</
template
>
<
script
>
export
default
{
onLoad
({
url
,
title
})
{
console
.
log
(
url
,
title
);
this
.
url
=
url
;
if
(
title
){
uni
.
setNavigationBarTitle
({
title
});
}
},
data
()
{
return
{
url
:
null
};
}
}
</
script
>
<
style
lang=
"scss"
>
</
style
>
pages/list/news-list.vue
浏览文件 @
ee8f1922
...
...
@@ -21,7 +21,7 @@
<!-- 页面分类标题 -->
<uni-section
style=
"margin:0;"
v-if=
"searchText"
:title=
"listTitle"
type=
"line"
></uni-section>
<unicloud-db
ref=
"udb"
v-slot:default=
"
{data, loading, error, options}" :options="formData"
:collection="collection" :field="field" :where="where" @load="load
($event);isLoading = false;
" @error="isLoading = false">
:collection="collection" :field="field" :where="where" @load="load" @error="isLoading = false">
<text
v-if=
"error"
class=
"list-info"
>
{{
error
.
message
}}
</text>
<!-- 基于 uni-list 的页面布局 -->
<uni-list
:class=
"
{ 'uni-list--waterfall': options.waterfall }">
...
...
@@ -119,11 +119,13 @@
*/
refresh
()
{
this
.
tipShow
=
true
this
.
formData
.
status
=
'
more
'
this
.
formData
.
status
=
'
more
'
this
.
isLoading
=
true
this
.
$refs
.
udb
.
loadData
({
clear
:
true
},
()
=>
{
this
.
tipShow
=
false
this
.
tipShow
=
false
this
.
isLoading
=
false
uni
.
stopPullDownRefresh
()
})
},
...
...
@@ -133,7 +135,8 @@
loadMore
()
{
this
.
$refs
.
udb
.
loadMore
()
},
load
(
data
,
ended
)
{
load
(
data
,
ended
)
{
this
.
isLoading
=
false
if
(
ended
)
{
this
.
formData
.
status
=
'
noMore
'
}
...
...
pages/ucenter/about/about.vue
浏览文件 @
ee8f1922
<
template
>
<view
class=
"about"
>
<view
class=
"content"
>
<view
class=
"qrcode"
>
<image
src=
"https://img.cdn.aliyun.dcloud.net.cn/guide/uniapp/app_download.png"
@
longtap=
"save"
></image>
<text
class=
"tip"
>
扫码体验uni-app
</text>
</view>
<view
class=
"desc"
>
<text
class=
"code"
>
uni-app
</text>
是一个使用
<text
class=
"code"
>
Vue.js
</text>
开发跨平台应用的前端框架。
</view>
<view
class=
"source"
>
<view
class=
"title"
>
本示例源码获取方式:
</view>
<view
class=
"source-list"
>
<view
class=
"source-cell"
>
<text
space=
"nbsp"
>
1.
</text>
<text>
下载 HBuilderX,新建 uni-app 项目时选择
<text
class=
"code"
>
Hello uni-app
</text>
模板。
</text>
</view>
<view
class=
"source-cell"
>
<text
space=
"nbsp"
>
2.
</text>
<u-link
class=
"link"
:href=
"'https://github.com/dcloudio/hello-uniapp'"
:text=
"'https://github.com/dcloudio/hello-uniapp'"
></u-link>
</view>
</view>
</view>
<!-- #ifdef APP-PLUS -->
<button
type=
"primary"
@
click=
"share"
>
分享
</button>
<!-- #endif -->
<view
class=
"aboutus"
>
<view
class=
"logo"
>
<image
class=
"logoImg"
src=
"@/static/logo.png"
></image>
<text
class=
"tip appName"
>
{{
aboutus
.
appName
}}
</text>
<text
class=
"tip"
style=
"font-size:24upx;"
>
Version
{{
version
}}
</text>
</view>
<!-- #ifdef APP-PLUS -->
<view
class=
"version"
>
当前版本:
{{
version
}}
<view
class=
"copyright"
>
<text
class=
"agreement"
@
click=
"navigateTo(aboutus.agreement.privacy,'用户服务协议')"
>
《用户服务协议》
</text>
<text
class=
"hint"
>
和
</text>
<text
class=
"agreement"
@
click=
"navigateTo(aboutus.agreement.business,'隐私政策')"
>
《隐私政策》
</text>
<text
class=
"hint"
>
Copyright ©
{{
year
}}
</text>
<text
class=
"hint"
>
{{
aboutus
.
company
}}
</text>
</view>
<!-- #endif -->
</view>
</
template
>
<
script
>
import
baseappConfig
from
'
@/baseapp.config.json
'
;
export
default
{
data
()
{
return
{
providerList
:
[],
version
:
''
}
},
onLoad
()
{
// #ifdef APP-PLUS
this
.
version
=
plus
.
runtime
.
version
;
uni
.
getProvider
({
service
:
'
share
'
,
success
:
(
result
)
=>
{
const
data
=
[];
for
(
let
i
=
0
;
i
<
result
.
provider
.
length
;
i
++
)
{
switch
(
result
.
provider
[
i
])
{
case
'
weixin
'
:
data
.
push
({
name
:
'
分享到微信好友
'
,
id
:
'
weixin
'
});
data
.
push
({
name
:
'
分享到微信朋友圈
'
,
id
:
'
weixin
'
,
type
:
'
WXSenceTimeline
'
});
break
;
case
'
qq
'
:
data
.
push
({
name
:
'
分享到QQ
'
,
id
:
'
qq
'
});
break
;
default
:
break
;
}
}
this
.
providerList
=
data
;
},
fail
:
(
error
)
=>
{
console
.
log
(
'
获取分享通道失败
'
+
JSON
.
stringify
(
error
));
}
});
this
.
version
=
plus
.
runtime
.
version
// #endif
},
methods
:
{
// #ifdef APP-PLUS
save
()
{
uni
.
showActionSheet
({
itemList
:
[
'
保存图片到相册
'
],
success
:
()
=>
{
plus
.
gallery
.
save
(
'
https://img.cdn.aliyun.dcloud.net.cn/guide/uniapp/app_download.png
'
,
function
()
{
uni
.
showToast
(
{
title
:
'
保存成功
'
,
icon
:
'
none
'
});
},
function
()
{
uni
.
showToast
(
{
title
:
'
保存失败,请重试!
'
,
icon
:
'
none
'
});
});
}
data
()
{
return
{
version
:
"
V1.0.0
"
,
year
:
"
2020
"
,
aboutus
:{}
};
},
created
()
{
this
.
aboutus
=
baseappConfig
.
aboutus
this
.
year
=
(
new
Date
).
getFullYear
()
},
methods
:
{
navigateTo
(
url
,
title
)
{
uni
.
navigateTo
({
url
:
'
/pages/common/webview/webview?url=
'
+
url
+
'
&title=
'
+
title
,
success
:
res
=>
{},
fail
:
()
=>
{},
complete
:
()
=>
{
}
});
},
share
(
e
)
{
if
(
this
.
providerList
.
length
===
0
)
{
uni
.
showModal
({
title
:
'
当前环境无分享渠道!
'
,
showCancel
:
false
});
return
;
}
let
itemList
=
this
.
providerList
.
map
(
function
(
value
)
{
return
value
.
name
;
})
uni
.
showActionSheet
({
itemList
:
itemList
,
success
:
(
res
)
=>
{
let
provider
=
this
.
providerList
[
res
.
tapIndex
].
id
;
uni
.
share
({
provider
:
provider
,
scene
:
this
.
providerList
[
res
.
tapIndex
].
type
&&
this
.
providerList
[
res
.
tapIndex
].
type
===
'
WXSenceTimeline
'
?
'
WXSenceTimeline
'
:
"
WXSceneSession
"
,
type
:
(
provider
===
"
qq
"
)
?
1
:
0
,
title
:
'
欢迎体验uni-app
'
,
summary
:
'
uni-app 是一个使用 Vue.js 开发跨平台应用的前端框架
'
,
imageUrl
:
'
https://vkceyugu.cdn.bspapp.com/VKCEYUGU-dc-site/b09e38e0-5168-11eb-b680-7980c8a877b8.jpg
'
,
href
:
"
https://m3w.cn/uniapp
"
,
success
:
(
res
)
=>
{
console
.
log
(
"
success:
"
+
JSON
.
stringify
(
res
));
},
fail
:
(
e
)
=>
{
uni
.
showModal
({
content
:
e
.
errMsg
,
showCancel
:
false
})
}
});
}
})
}
// #endif
}
}
</
script
>
<
style
>
page
,
view
{
display
:
flex
;
}
page
{
min-height
:
100%
;
background-color
:
#FFFFFF
;
}
image
{
width
:
360
rpx
;
height
:
360
rpx
;
}
.about
{
flex-direction
:
column
;
flex
:
1
;
}
.content
{
flex
:
1
;
padding
:
30
rpx
;
flex-direction
:
column
;
justify-content
:
center
;
}
.qrcode
{
display
:
flex
;
align-items
:
center
;
flex-direction
:
column
;
}
.qrcode
.tip
{
margin-top
:
20
rpx
;
}
.desc
{
margin-top
:
30
rpx
;
display
:
block
;
}
.code
{
color
:
#e96900
;
background-color
:
#f8f8f8
;
/* #ifndef APP-NVUE */
display
:
inline-block
;
/* #endif */
}
button
{
width
:
100%
;
margin-top
:
40
rpx
;
}
.version
{
height
:
80
rpx
;
line-height
:
80
rpx
;
justify-content
:
center
;
color
:
#ccc
;
text-align
:
center
;
}
.source
{
margin-top
:
30
rpx
;
flex-direction
:
column
;
}
.source-list
{
flex-direction
:
column
;
}
.link
{
color
:
#007AFF
;
}
</
style
>
<
style
lang=
"scss"
scoped
>
.aboutus
{
width
:
750upx
;
flex-direction
:
column
;
}
.logo
{
width
:
750upx
;
position
:
fixed
;
left
:
0
;
top
:
100px
;
flex-direction
:
column
;
justify-content
:
center
;
align-items
:
center
;
}
.logoImg
{
margin-bottom
:
10upx
;
width
:
160upx
;
height
:
160upx
;
border-radius
:
15px
;
}
.appName
{
margin-top
:
20px
;
margin-bottom
:
5px
;
font-size
:
42rpx
;
font-weight
:
500
;
}
.copyright
{
width
:
750upx
;
font-size
:
32rpx
;
flex-direction
:
column
;
justify-content
:
center
;
align-items
:
center
;
bottom
:
20px
;
left
:
0
;
position
:
fixed
;
}
.agreement
{
color
:
#2285ff
;
font-size
:
26rpx
;
}
.hint
{
color
:
#999999
;
font-size
:
26rpx
;
}
</
style
>
\ No newline at end of file
pages/ucenter/agree-list/privacy/privacy.html
0 → 100644
浏览文件 @
ee8f1922
<!DOCTYPE html>
<html>
<head>
<meta
charset=
"utf-8"
/>
<meta
name=
"viewport"
content=
"width=device-width, initial-scale=1"
>
<title>
隐私政策
</title>
<style
type=
"text/css"
>
#wrap
{
padding
:
10px
;
white-space-collapse
:
discard
;
}
p
{
text-indent
:
2em
}
.title
{
text-align
:
center
;
text-indent
:
0
;
}
</style>
</head>
<body>
<div
id=
"wrap"
>
<p
class=
"title"
>
更新日期(2021-01-01)
</p>
<p>
DCloud(以下简称我们)尊重并保护所有使用服务用户的个人隐私权。为了给您提供更准确、更有个性化的服务,我们会按照本隐私权政策的规定使用和披露您的个人信息。但我们将以高度的勤勉、审慎义务对待这些信息。除本隐私权政策另有规定外,在未征得您事先许可的情况下,我们不会将这些信息对外披露或向第三方提供。我们会不时更新本隐私权政策。
您在同意我们服务使用协议之时,即视为您已经同意本隐私权政策全部内容。本隐私权政策属于我们服务使用协议不可分割的一部分。
</p>
<p>
1.适用范围
</p>
<p>
a.在您注册我们帐号时,您根据我们要求提供的个人注册信息;
<br>
b.在您使用我们网络服务,或访问我们平台网页时,我们自动接收并记录的您的浏览器和计算机上的信息,包括但不限于您的IP地址、浏览器的类型、使用的语言、访问日期和时间、软硬件特征信息及您需求的网页记录等数据;
<br>
c.我们通过合法途径从商业伙伴处取得的用户个人数据。
</p>
<p>
您了解并同意,以下信息不适用本隐私权政策:
</p>
<p>
a.您在使用我们平台提供的搜索服务时输入的关键字信息;
<br>
b.我们收集到的您在我们发布的有关信息数据,包括但不限于参与活动、成交信息及评价详情;
<br>
c.违反法律规定或违反我们规则行为及我们已对您采取的措施。
</p>
<p>
2.信息使用
</p>
<p>
a.在您注册我们帐号时,您根据我们要求提供的个人注册信息;
<br>
b.在您使用我们网络服务,或访问我们平台网页时,我们自动接收并记录的您的浏览器和计算机上的信息,包括但不限于您的IP地址、浏览器的类型、使用的语言、访问日期和时间、软硬件特征信息及您需求的网页记录等数据;
<br>
c.我们通过合法途径从商业伙伴处取得的用户个人数据。
</p>
<p>
您了解并同意,以下信息不适用本隐私权政策:
</p>
<p>
a.您在使用我们平台提供的搜索服务时输入的关键字信息;
<br>
b.我们收集到的您在我们发布的有关信息数据,包括但不限于参与活动、成交信息及评价详情;
<br>
c.违反法律规定或违反我们规则行为及我们已对您采取的措施。
</p>
</p>
</div>
</body>
</html>
pages/ucenter/agree-list/service/service.html
0 → 100644
浏览文件 @
ee8f1922
<!DOCTYPE html>
<html>
<head>
<meta
charset=
"utf-8"
/>
<meta
name=
"viewport"
content=
"width=device-width, initial-scale=1"
>
<title>
服务协议
</title>
<style
type=
"text/css"
>
#wrap
{
padding
:
10px
;
white-space-collapse
:
discard
;
}
p
{
text-indent
:
2em
}
.title
{
text-align
:
center
;
text-indent
:
0
;
}
</style>
</head>
<body>
<div
id=
"wrap"
>
<p
class=
"title"
>
更新日期(2021-01-01)
</p>
<p>
尊敬的用户,欢迎阅读DCloud服务协议(以下简称“本服务协议”)。 与用户共同确认:
</p>
<p>
1. 用户点击本服务协议正本下方的“确认”按钮并完成注册程序、获得账号和密码时,则视为用户与已达成本服务协议。本服务协议即在用户和之间产生法律效力。
<br>
2. 本服务协议内容包括协议正文及所有已经发布的或将来可能发布的各类规则。用户在使用提供的各项服务的同时,承诺接受并遵守相关的各类规则。
<br>
3. 有权根据需要不时地制定、修改本服务协议正文或各类规则,如本服务协议有任何变更,将在网站上刊载公告,予以公示。经修订的协议一经在网站公布后,立即自动生效。各类规则在网站发布后立即生效,亦成为本服务协议的一部分。若用户登录或继续使用提供服务的,将表示用户接受经修订的协议。若用户不同意相关变更,必须停止使用提供的服务。
<br>
4. 及用户均已认真阅读本服务协议中的全部条款(特别是以黑体字或下划线标示出的有关及用户重大权益的条款)及发布的其他各类规则的内容,对协议正文及各类规则均以知晓、理解并接受,同意将其作为确定双方权利、义务的依据。
</p>
<p>
条款如下:
</p>
<p>
一、定义条款 接受并同意本服务协议全部条款及发布的其他各类规则,通过网站注册成为会员,且具备完全民事行为能力或者获经法定代理人同意的限制民事行为能力的自然人、法人、个体工商户或者其他组织。
用户分为商家用户和普通用户。 1.1.1 商家用户 指通过注册成为的会员,并发布商家及其产品或者服务信息的法人、个体工商户或者其他组织,即为本服务协议文中“商家”。 1.1.2 普通用户 指享受服务的普通用户,即为本服务协议文中“用户”。
</p>
<p>
二、用户注册 2.1 注册资格 用户保证,其具有完全民事权利能力和行为能力或虽不具有完全民事权利能力和行为能力但经其法定代理人同意享用服务。否则,其与之间的服务协议自始无效,一经发现,有权立即注销该用户,并追究其使用提供服务的一切法律责任。 2.2 注册流程 2.2.1 用户同意根据用户注册页面要求提供有效电子邮箱、联系电话等信息,设置账号及密码,用户应确保所提供全部信息的真实性、完整性和准确性。 2.2.2 用户合法、完整并有效提供注册所需信息的,有权获得账号和密码,账号和密码用于用户在进行会员登录。同时用户应当对以其账号进行的所有活动和事件负法律责任。 2.2.3 用户获得账号及密码时视为用户注册成功,用户同意接收发送的与管理、运营相关的电子邮件和/或短消息。 2.3 税费承担 用户通过购销产品或服务而发生的全部应纳税赋,均由用户自行支付。 "
</p>
</div>
</body>
</html>
pages/ucenter/edit/edit.vue
浏览文件 @
ee8f1922
...
...
@@ -104,8 +104,6 @@
width
:
150
rpx
;
height
:
150
rpx
;
border-radius
:
75
rpx
;
border-width
:
1
rpx
;
border-color
:
#999999
;
border
:
#F8F8F8
solid
1px
;
}
</
style
>
pages/ucenter/settings/settings.vue
浏览文件 @
ee8f1922
...
...
@@ -2,12 +2,15 @@
<view
class=
"content"
>
<!-- 功能列表 -->
<uni-list
class=
"content"
>
<uni-list-item
v-for=
"(item,index) in agreeList"
:key=
"index"
:title=
"item.title"
:to=
"item.to"
<uni-list-item
v-for=
"(item,index) in agreeList"
:key=
"index"
:title=
"item.title"
:clickable=
"true"
@
click=
"itemClick(item)"
:showSwitch=
"item.showSwitch"
:switchChecked=
"item.isChecked"
:link=
"
item.to
"
></uni-list-item>
:link=
"
!item.showSwitch
"
></uni-list-item>
</uni-list>
<!-- 退出按钮 -->
<button
class=
"bottom-back"
@
click=
"clickLogout"
><text
class=
"bottom-back-text"
>
退出登录
</text></button>
<!-- 退出按钮 -->
<button
class=
"bottom-back"
@
click=
"clickLogout"
>
<text
class=
"bottom-back-text"
v-if=
"userInfo"
>
退出登录
</text>
<text
class=
"bottom-back-text"
v-else
>
登录
</text>
</button>
</view>
</
template
>
...
...
@@ -68,22 +71,24 @@
logout
:
'
user/logout
'
}),
toEdit
(){
uni
.
navigateTo
({
url
:
'
..
/edit/edit
'
url
:
'
/pages/ucenter
/edit/edit
'
});
},
changePwd
(){
if
(
this
.
userInfo
){
uni
.
navigateTo
({
url
:
'
/uni_modules/uni-login-page/pages/index/pwd-retrieve?phoneNumber=
'
+
(
this
.
userInfo
.
phone
||
''
)
+
'
&phoneArea=+86
'
});
}
else
{
uni
.
showToast
({
title
:
'
请先登录
'
,
icon
:
'
none
'
});
}
uni
.
navigateTo
({
url
:
'
/uni_modules/uni-login-page/pages/index/pwd-retrieve?phoneNumber=
'
+
(
this
.
userInfo
.
phone
||
''
)
+
'
&phoneArea=+86
'
});
// if(this.userInfo){
// uni.navigateTo({
// url:'/uni_modules/uni-login-page/pages/index/pwd-retrieve?phoneNumber='+ (this.userInfo.phone||'') +'&phoneArea=+86'
// });
// } else {
// uni.showToast({
// title: '请先登录',
// icon: 'none'
// });
// }
},
checkPush
(){
// 手机端获取推送是否开启
...
...
@@ -186,21 +191,26 @@
})
},
clickLogout
()
{
uni
.
showModal
({
title
:
'
提示
'
,
content
:
'
是否退出登录
'
,
cancelText
:
'
取消
'
,
confirmText
:
'
确定
'
,
success
:
res
=>
{
if
(
res
.
confirm
){
this
.
logout
();
uni
.
navigateBack
();
}
},
fail
:
()
=>
{},
complete
:
()
=>
{}
});
if
(
this
.
userInfo
){
uni
.
showModal
({
title
:
'
提示
'
,
content
:
'
是否退出登录
'
,
cancelText
:
'
取消
'
,
confirmText
:
'
确定
'
,
success
:
res
=>
{
if
(
res
.
confirm
){
this
.
logout
();
uni
.
navigateBack
();
}
},
fail
:
()
=>
{},
complete
:
()
=>
{}
});
}
else
{
uni
.
navigateTo
({
url
:
'
/uni_modules/uni-login-page/pages/index/index
'
});
}
},
itemClick
(
item
)
{
if
(
!
item
.
to
&&
item
.
event
)
{
...
...
@@ -252,11 +262,12 @@
border
:
none
;
/* #endif */
border-width
:
0
;
border-radius
:
0
;
border-radius
:
0
;
background-color
:
#007AFF
;
}
.bottom-back-text
{
font-size
:
40
rpx
;
color
:
#
DD524D
;
color
:
#
FFFFFF
;
}
</
style
>
pages/ucenter/ucenter.vue
浏览文件 @
ee8f1922
<
template
>
<view
class=
"center"
>
<
view
class=
"userInfo"
@
click=
"goLogin"
:hover-class=
"!login ? 'logo-hover' : ''
"
>
<
navigator
url=
"/pages/ucenter/settings/settings"
class=
"userInfo
"
>
<image
class=
"logo-img"
:src=
"login ? (userInfo.avatar || avatarUrl) :avatarUrl"
></image>
<view
class=
"logo-title"
>
{{
JSON
.
stringify
(
userInfo
)
}}
<text
class=
"uer-name"
>
{{
login
?
userInfo
.
nickname
||
userInfo
.
mobile
:
'
您未登录
'
}}
</text>
<view
class=
"logo-title"
>
<text
class=
"uer-name"
>
{{
login
?
userInfo
.
username
||
userInfo
.
mobile
:
'
未登录
'
}}
</text>
<text
class=
"go-login-navigat-arrow navigat-arrow"
v-if=
"!login"
>

</text>
</view>
</
view
>
</
navigator
>
<uni-grid
class=
"grid"
:column=
"5"
:showBorder=
"false"
:square=
"true"
>
<uni-grid-item
class=
"item"
v-for=
"(
{text,icon},index) in gridList" @click.native="tapGrid(index)">
<uni-icons
class=
"icon"
color=
"#5d5e64"
:type=
"icon"
size=
"28"
></uni-icons>
...
...
@@ -175,9 +174,9 @@
align-items
:
center
;
}
.logo-hover
{
/*
.logo-hover {
opacity: 0.8;
}
}
*/
.logo-img
{
width
:
150
rpx
;
...
...
uni_modules/uni-id/uniCloud/cloudfunctions/common/uni-id/package-lock.json
浏览文件 @
ee8f1922
{
"name"
:
"uni-id"
,
"version"
:
"3.0.
8
"
,
"lockfileVersion"
:
2
,
"version"
:
"3.0.
11
"
,
"lockfileVersion"
:
1
,
"requires"
:
true
,
"packages"
:
{
""
:
{
"version"
:
"3.0.8"
,
"license"
:
"Apache-2.0"
,
"dependencies"
:
{
"uni-config-center"
:
"file:../../../../../uni-config-center/uniCloud/cloudfunctions/common/uni-config-center"
}
},
"../../../../../uni-config-center/uniCloud/cloudfunctions/common/uni-config-center"
:
{
"version"
:
"0.0.1"
,
"license"
:
"Apache-2.0"
},
"node_modules/uni-config-center"
:
{
"resolved"
:
"../../../../../uni-config-center/uniCloud/cloudfunctions/common/uni-config-center"
,
"link"
:
true
}
},
"dependencies"
:
{
"uni-config-center"
:
{
"version"
:
"file:../../../../../uni-config-center/uniCloud/cloudfunctions/common/uni-config-center"
...
...
uni_modules/uni-id/uniCloud/cloudfunctions/common/uni-id/package.json
浏览文件 @
ee8f1922
...
...
@@ -13,4 +13,4 @@
"dependencies"
:
{
"uni-config-center"
:
"file:../../../../../uni-config-center/uniCloud/cloudfunctions/common/uni-config-center"
}
}
\ No newline at end of file
}
uni_modules/uni-nodata/components/uni-nodata/uni-nodata.nvue
浏览文件 @
ee8f1922
...
...
@@ -165,6 +165,7 @@
bottom: 0;
/* #ifndef APP-NVUE */
margin: auto;
z-index:9;
/* #endif */
}
...
...
uni_modules/uni-quick-login/uniCloud/cloudfunctions/user-center/index.js
浏览文件 @
ee8f1922
...
...
@@ -107,6 +107,11 @@ exports.main = async (event, context) => {
break
;
case
'
login_by_weixin
'
:
res
=
await
uniID
.
loginByWeixin
(
params
);
await
uniID
.
updateUser
({
uid
:
params
.
uid
,
username
:
"
微信用户
"
});
res
.
userInfo
.
username
=
"
微信用户
"
loginLog
(
res
)
break
;
case
'
login_by_univerify
'
:
...
...
uni_modules/uni-quick-login/uniCloud/cloudfunctions/user-center/package-lock.json
浏览文件 @
ee8f1922
{
"name"
:
"user-center"
,
"version"
:
"1.0.0"
,
"lockfileVersion"
:
1
"lockfileVersion"
:
1
,
"requires"
:
true
,
"dependencies"
:
{
"uni-captcha"
:
{
"version"
:
"file:../../../../uni-captcha/uniCloud/cloudfunctions/common/uni-captcha"
},
"uni-config-center"
:
{
"version"
:
"file:../../../../uni-config-center/uniCloud/cloudfunctions/common/uni-config-center"
},
"uni-id"
:
{
"version"
:
"file:../../../../uni-id/uniCloud/cloudfunctions/common/uni-id"
,
"requires"
:
{
"uni-config-center"
:
"file:../../../../uni-config-center/uniCloud/cloudfunctions/common/uni-config-center"
},
"dependencies"
:
{
"uni-config-center"
:
{
"version"
:
"file:../../../../uni-config-center/uniCloud/cloudfunctions/common/uni-config-center"
}
}
}
}
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录