提交 8253a864 编写于 作者: DCloud_JSON's avatar DCloud_JSON

修复仅选择一种快捷登录时的错误,未完成待续...

上级 ee35dd57
......@@ -97,23 +97,19 @@
}
},
async created() {
this.univerifyStyle.privacyTerms.privacyItems = this.agreements
let servicesList = this.servicesList
//获取当前环境能用的快捷登录方式
// #ifdef MP-WEIXIN
let id = 'weixin'
if (this.loginConfig.includes(id)) {
servicesList.push({
...this.config[id],
id
})
}
servicesList.push({
...this.config[id],
id
})
// #endif
// #ifdef APP-PLUS
this.oauthServices = await new Promise((callBack)=>{
plus.oauth.getServices(oauthServices => {
callBack(oauthServices.filter(({nativeClient,id})=>nativeClient&&this.loginConfig.includes(id)))
callBack(oauthServices.filter(({nativeClient,id})=>nativeClient))
//只返回1.应用支持 && 2.手机已安装对应客户端 && 3.uni-starter.config.js配置项中存在的快捷登录方式
}, err => {
callBack([])
......@@ -131,17 +127,29 @@
servicesList = servicesList.concat(this.oauthServices.map( ({id})=>{
return {...this.config[id],id}
}))
//去掉配置中不存在的
servicesList = servicesList.filter(item=>this.loginConfig.includes(item.id))
this.univerifyStyle.privacyTerms.privacyItems = this.agreements
//设置一键登录功能底下的快捷登陆按钮
servicesList.forEach(({id,logo})=>{
if(id != 'univerify'){
this.univerifyStyle.buttons.list.push({"iconPath":logo,"provider":id})
}
})
//如果当前页面为默认登陆界面。当前第一优先级的“第三方快捷按钮”要隐藏,因为他已经被渲染在默认登陆界面顶部
if(
this.getRoute(1)=='/pages/ucenter/login-page/index/index' &&
this.config[this.loginConfig[0]]
){
servicesList = servicesList.filter(item=>item.id!=this.loginConfig[0])
}
//去掉当前页面对应的登录选项
this.servicesList = servicesList.filter(item=>{
return item.path != this.getRoute(1)
})
// console.log('servicesList',servicesList,this.servicesList);
console.log('servicesList',servicesList,this.servicesList);
},
methods: {
...mapMutations({
......
{
"name": "uni-starter",
"appid": "请点击重新获取",
"description": "云端一体应用快速开发模版",
"versionName": "1.0.0",
"versionCode": "100",
"transformPx": false,
"app-plus": {
"privacy": {
"prompt": "template",
"template": {
"title": "服务协议和隐私政策",
"message": "  请你务必审慎阅读、充分理解“服务协议”和“隐私政策”各条款,包括但不限于:为了更好的向你提供服务,我们需要收集你的设备标识、操作日志等信息用于分析、优化应用性能。<br/>  你可阅读<a href=\"https://ask.dcloud.net.cn/protocol.html\">《服务协议》</a>和<a href=\"https://ask.dcloud.net.cn/protocol.html\">《隐私政策》</a>了解详细信息。如果你同意,请点击下面按钮开始接受我们的服务。",
"buttonAccept": "同意",
"buttonRefuse": "暂不同意"
}
},
"compatible": {
"ignoreVersion": true
},
"usingComponents": true,
"nvueStyleCompiler": "uni-app",
"compilerVersion": 3,
"splashscreen": {
"alwaysShowBeforeRender": true,
"waiting": true,
"autoclose": true,
"delay": 0
},
"modules": {
"Fingerprint": {
},
"Share": {
},
"OAuth": {
},
"FaceID": {
},
"Push": {
}
},
"distribute": {
"android": {
"permissions": [
"<uses-feature android:name=\"android.hardware.camera\"/>",
"<uses-feature android:name=\"android.hardware.camera.autofocus\"/>",
"<uses-permission android:name=\"android.permission.ACCESS_NETWORK_STATE\"/>",
"<uses-permission android:name=\"android.permission.ACCESS_WIFI_STATE\"/>",
"<uses-permission android:name=\"android.permission.CAMERA\"/>",
"<uses-permission android:name=\"android.permission.CHANGE_NETWORK_STATE\"/>",
"<uses-permission android:name=\"android.permission.CHANGE_WIFI_STATE\"/>",
"<uses-permission android:name=\"android.permission.FLASHLIGHT\"/>",
"<uses-permission android:name=\"android.permission.GET_ACCOUNTS\"/>",
"<uses-permission android:name=\"android.permission.MODIFY_AUDIO_SETTINGS\"/>",
"<uses-permission android:name=\"android.permission.MOUNT_UNMOUNT_FILESYSTEMS\"/>",
"<uses-permission android:name=\"android.permission.READ_LOGS\"/>",
"<uses-permission android:name=\"android.permission.READ_PHONE_STATE\"/>",
"<uses-permission android:name=\"android.permission.USE_FINGERPRINT\"/>",
"<uses-permission android:name=\"android.permission.VIBRATE\"/>",
"<uses-permission android:name=\"android.permission.WAKE_LOCK\"/>",
"<uses-permission android:name=\"android.permission.WRITE_SETTINGS\"/>"
],
"abiFilters": [
"armeabi-v7a",
"arm64-v8a",
"x86"
]
},
"ios": {
},
"sdkConfigs": {
"oauth": {
"apple": {
},
"weixin": {
"appid": "wxffdd8fa6ec4ef2a0",
"appsecret": "",
"UniversalLinks": ""
},
"univerify": {
}
"name" : "uni-starter",
"appid" : "__UNI__03B096E",
"description" : "云端一体应用快速开发模版",
"versionName" : "1.0.0",
"versionCode" : "100",
"transformPx" : false,
"app-plus" : {
"privacy" : {
"prompt" : "template",
"template" : {
"title" : "服务协议和隐私政策",
"message" : "  请你务必审慎阅读、充分理解“服务协议”和“隐私政策”各条款,包括但不限于:为了更好的向你提供服务,我们需要收集你的设备标识、操作日志等信息用于分析、优化应用性能。<br/>  你可阅读<a href=\"https://ask.dcloud.net.cn/protocol.html\">《服务协议》</a>和<a href=\"https://ask.dcloud.net.cn/protocol.html\">《隐私政策》</a>了解详细信息。如果你同意,请点击下面按钮开始接受我们的服务。",
"buttonAccept" : "同意",
"buttonRefuse" : "暂不同意"
}
},
"ad": {
"compatible" : {
"ignoreVersion" : true
},
"share": {
"weixin": {
"appid": "wxffdd8fa6ec4ef2a0",
"UniversalLinks": ""
}
"usingComponents" : true,
"nvueStyleCompiler" : "uni-app",
"compilerVersion" : 3,
"splashscreen" : {
"alwaysShowBeforeRender" : true,
"waiting" : true,
"autoclose" : true,
"delay" : 0
},
"geolocation": {
"modules" : {
"Fingerprint" : {},
"Share" : {},
"OAuth" : {},
"FaceID" : {},
"Push" : {}
},
"push": {
"unipush": {
}
"distribute" : {
"android" : {
"permissions" : [
"<uses-feature android:name=\"android.hardware.camera\"/>",
"<uses-feature android:name=\"android.hardware.camera.autofocus\"/>",
"<uses-permission android:name=\"android.permission.ACCESS_NETWORK_STATE\"/>",
"<uses-permission android:name=\"android.permission.ACCESS_WIFI_STATE\"/>",
"<uses-permission android:name=\"android.permission.CAMERA\"/>",
"<uses-permission android:name=\"android.permission.CHANGE_NETWORK_STATE\"/>",
"<uses-permission android:name=\"android.permission.CHANGE_WIFI_STATE\"/>",
"<uses-permission android:name=\"android.permission.FLASHLIGHT\"/>",
"<uses-permission android:name=\"android.permission.GET_ACCOUNTS\"/>",
"<uses-permission android:name=\"android.permission.MODIFY_AUDIO_SETTINGS\"/>",
"<uses-permission android:name=\"android.permission.MOUNT_UNMOUNT_FILESYSTEMS\"/>",
"<uses-permission android:name=\"android.permission.READ_LOGS\"/>",
"<uses-permission android:name=\"android.permission.READ_PHONE_STATE\"/>",
"<uses-permission android:name=\"android.permission.USE_FINGERPRINT\"/>",
"<uses-permission android:name=\"android.permission.VIBRATE\"/>",
"<uses-permission android:name=\"android.permission.WAKE_LOCK\"/>",
"<uses-permission android:name=\"android.permission.WRITE_SETTINGS\"/>"
],
"abiFilters" : [ "armeabi-v7a", "arm64-v8a", "x86" ]
},
"ios" : {},
"sdkConfigs" : {
"oauth" : {
"apple" : {},
"weixin" : {
"appid" : "wxffdd8fa6ec4ef2a0",
"appsecret" : "",
"UniversalLinks" : ""
},
"univerify" : {}
},
"ad" : {},
"share" : {
"weixin" : {
"appid" : "wxffdd8fa6ec4ef2a0",
"UniversalLinks" : ""
}
},
"geolocation" : {},
"push" : {
"unipush" : {}
},
"payment" : {}
}
},
"payment": {
}
}
"nvueLaunchMode" : ""
},
"quickapp" : {},
"mp-weixin" : {
"appid" : "wx81dbb061d2258234",
"setting" : {
"urlCheck" : false,
"es6" : false
},
"usingComponents" : true,
"betterScopedSlots" : true
},
"mp-alipay" : {
"usingComponents" : true
},
"mp-baidu" : {
"usingComponents" : true
},
"mp-toutiao" : {
"usingComponents" : true
},
"nvueLaunchMode": ""
},
"quickapp": {
},
"mp-weixin": {
"appid": "",
"setting": {
"urlCheck": false,
"es6": false
"uniStatistics" : {
"enable" : false
},
"usingComponents": true,
"betterScopedSlots": true
},
"mp-alipay": {
"usingComponents": true
},
"mp-baidu": {
"usingComponents": true
},
"mp-toutiao": {
"usingComponents": true
},
"uniStatistics": {
"enable": false
},
"h5": {
"template": ""
}
}
\ No newline at end of file
"h5" : {
"template" : ""
}
}
......@@ -185,7 +185,7 @@
"path": "pages/ucenter/settings/settings"
}
],
"current": 0
"current": 1
},
"tabBar": {
"color": "#7A7E83",
......
......@@ -3,22 +3,24 @@
<!-- 顶部文字 -->
<text class="title">登录后即可展示自己</text>
<!-- 登录框 -->
<input type="number" class="input-box" :inputBorder="false" v-model="phone" maxlength="11"
<input v-if="first_type=='smsCode'" type="number" class="input-box" :inputBorder="false" v-model="phone" maxlength="11"
placeholder="请输入手机号" />
<image @click="quickLogin" :src="imgSrc" mode="widthFix" class="quickLoginBtn"></image>
<uni-agreements @setAgree="agree = $event"></uni-agreements>
<button class="get-code" :disabled="!isPhone" :type="isPhone?'primary':'default'"
<button v-if="first_type=='smsCode'" class="get-code" :disabled="!isPhone" :type="isPhone?'primary':'default'"
@click="sendShortMsg">获取短信验证码</button>
<text class="tip">未注册的手机号验证通过后将自动注册</text>
<text v-if="first_type=='smsCode'" class="tip">未注册的手机号验证通过后将自动注册</text>
<!-- 登录按钮弹窗 -->
<uni-quick-login :agree="agree" ref="uniQuickLogin"></uni-quick-login>
</view>
</template>
<script>
var univerify_first, currentWebview; //是否一键登录优先
let currentWebview; //是否一键登录优先
export default {
data() {
return {
return {
first_type:"",
phone: "",
agree: false
}
......@@ -26,13 +28,16 @@
computed: {
isPhone() {
return /^1\d{10}$/.test(this.phone);
},
imgSrc(){
return '/static/login-index/'+this.first_type+'.jpg'
}
},
onLoad(e) {
onLoad(e) {
this.first_type = e.first_type
//是否优先启动一键登录。即:页面一加载就启动一键登录
univerify_first = e.univerify_first
//#ifdef APP-PLUS
if (univerify_first) {
if (this.first_type == "univerify") {
const pages = getCurrentPages();
currentWebview = pages[pages.length - 1].$getAppWebview();
currentWebview.setStyle({
......@@ -62,7 +67,10 @@
}
//#endif
},
methods: {
methods: {
quickLogin(){
this.$refs.uniQuickLogin.login_before(this.first_type)
},
sendShortMsg() {
if (!this.agree) {
return uni.showToast({
......@@ -90,5 +98,9 @@
</script>
<style lang="scss">
@import url("../common/login-page.css");
@import url("../common/login-page.css");
.quickLoginBtn{
width: 500rpx;
margin: 100rpx;
}
</style>
......@@ -30,7 +30,8 @@ module.exports = {
未列举到的,或设备环境不支持的选项,将被隐藏。如果你需要在不同平台有不同的配置,直接用条件编译即可
根据数组的第0项,决定登录方式的第一优先级。
*/
"login": ["username","smsCode","univerify", "weixin", "apple"],
// "login": ["username","smsCode","univerify", "weixin", "apple"],
"login": ["weixin","username"],
},
//关于应用
"about": {
......
......@@ -23,8 +23,8 @@
"mp-weixin": {
"oauth": {
"weixin": {
"appid": "微信小程序登录所用的appid、appsecret需要在对应的小程序管理控制台获取",
"appsecret": "微信小程序后台获取的appsecret"
"appid": "wx81dbb061d2258234",
"appsecret": "51977820eb14cd71377d4048a1b4754e"
}
}
},
......
// 在本文件中可配置云数据库初始化,数据格式见:https://uniapp.dcloud.io/uniCloud/cf-database?id=db_init
// 编写完毕后对本文件点右键,可按配置规则创建表和添加数据
{
"opendb-news-articles": {
"data": [{
"user_id": 121375,
"user_name": "未来汽车日报",
"category_id": "223",
"title": "为什么自动驾驶诉讼不断?",
"content": "",
"excerpt": "没有永远的敌人,只有永远的利益。",
"article_status": 1,
"view_count": 32053,
"like_count": 4603,
"is_sticky": false,
"is_essence": false,
"comment_status": 0,
"comment_count": 1204,
"last_comment_user_id": "",
"avatar": "https://img.36krcdn.com/20200410/v2_9c3331af67e64994aa97a27fffb1a380_img_png?x-oss-process=image/resize,m_mfit,w_520,h_300/crop,w_520,h_300,g_center",
"publish_date": "2020-04-11 17:07:48",
"publish_ip": "",
"last_modify_date": "2020-04-11 17:11:09",
"last_modify_ip": "",
"mode":1
}, {
"user_id": 121374,
"user_name": "36氪深度服务",
"category_id": "0",
"title": "2020数字中国创新大赛-数字政府赛道21强出炉,四大赛题紧贴政府数字化发展需求",
"content": "",
"excerpt": "提升数字治理、建设“温暖渔政”——四大赛题助力政府解决治理难题",
"article_status": 1,
"view_count": 53855,
"like_count": 970,
"is_sticky": false,
"is_essence": false,
"comment_status": 0,
"comment_count": 267,
"last_comment_user_id": "",
"avatar": "https://img.36krcdn.com/20200411/v2_16417a06088947debe0450950f8fc813_img_png",
"publish_date": "2020-04-11 16:59:15",
"publish_ip": "",
"last_modify_date": "2020-04-11 17:03:18",
"last_modify_ip": "",
"mode":2
}, {
"user_id": 121373,
"user_name": "未来汽车日报",
"category_id": "223",
"title": "地方政府救市哪家强?广州补贴上万元,广深杭新增指标超5万",
"content": "",
"excerpt": "补贴很难落袋为安。",
"article_status": 1,
"view_count": 51662,
"like_count": 238,
"is_sticky": false,
"is_essence": false,
"comment_status": 0,
"comment_count": 6217,
"last_comment_user_id": "",
"avatar": ["https://img.36krcdn.com/20200410/v2_6905947498bc4ec0af228afed409f771_img_png?x-oss-process=image/resize,m_mfit,w_520,h_300/crop,w_520,h_300,g_center","https://img.36krcdn.com/20200410/v2_6905947498bc4ec0af228afed409f771_img_png?x-oss-process=image/resize,m_mfit,w_520,h_300/crop,w_520,h_300,g_center","https://img.36krcdn.com/20200410/v2_6905947498bc4ec0af228afed409f771_img_png?x-oss-process=image/resize,m_mfit,w_520,h_300/crop,w_520,h_300,g_center"],
"publish_date": "2020-04-11 16:09:09",
"publish_ip": "",
"last_modify_date": "2020-04-11 16:11:11",
"last_modify_ip": "",
"mode":3
}, {
"user_id": 121372,
"user_name": "智东西",
"category_id": "234",
"title": "救命呼吸机缺口难补!一文扒开供应链真相",
"content": "",
"excerpt": "全球疯抢国产呼吸机背后:技术有短板,产能被卡住。",
"article_status": 1,
"view_count": 77926,
"like_count": 2239,
"is_sticky": false,
"is_essence": false,
"comment_status": 0,
"comment_count": 9154,
"last_comment_user_id": "",
"avatar": "https://img.36krcdn.com/20200410/v2_86bbf8245f754be79f3386a82b385093_img_000",
"publish_date": "2020-04-11 15:40:02",
"publish_ip": "",
"last_modify_date": "2020-04-11 15:53:10",
"last_modify_ip": "",
"mode":4
}, {
"user_id": 121371,
"user_name": "神译局",
"category_id": "223",
"title": "每月节省32%的开支,我是怎么做到的?",
"content": "",
"excerpt": "开源节流",
"article_status": 1,
"view_count": 53577,
"like_count": 862,
"is_sticky": false,
"is_essence": false,
"comment_status": 0,
"comment_count": 8073,
"last_comment_user_id": "",
"avatar": "https://img.36krcdn.com/20200408/v2_c67c3edfe4b5446992b32fad93a44a75_img_png",
"publish_date": "2020-04-11 14:48:02",
"publish_ip": "",
"last_modify_date": "2020-04-11 15:02:22",
"last_modify_ip": "",
"mode":5
}, {
"user_id": 121369,
"user_name": "资本侦探",
"category_id": "221",
"title": "瓜子坚果双增长,但洽洽并不能高枕无忧",
"content": "",
"excerpt": "零食市场竞争日益激烈。",
"article_status": 1,
"view_count": 13740,
"like_count": 1354,
"is_sticky": false,
"is_essence": false,
"comment_status": 0,
"comment_count": 7942,
"last_comment_user_id": "",
"avatar": "https://img.36krcdn.com/20200411/v2_2204c6132432403184e43df22485545e_img_000?x-oss-process=image/resize,m_mfit,w_432,h_288/crop,w_432,h_288,g_center",
"publish_date": "2020-04-11 14:23:00",
"publish_ip": "",
"last_modify_date": "2020-04-11 14:34:13",
"last_modify_ip": "",
"mode":6
}, {
"user_id": 121367,
"user_name": "神译局",
"category_id": "103",
"title": "克服危机和压力,精神力量强大的人都有这5个习惯",
"content": "",
"excerpt": "学会利用好真正艰难的时刻,增强自己的精神力量",
"article_status": 1,
"view_count": 71706,
"like_count": 4978,
"is_sticky": false,
"is_essence": false,
"comment_status": 0,
"comment_count": 5361,
"last_comment_user_id": "",
"avatar": "https://img.36krcdn.com/20200406/v2_d2c6a686b4074a1eb43603e67d6ba204_img_png",
"publish_date": "2020-04-11 13:47:01",
"publish_ip": "",
"last_modify_date": "2020-04-11 13:52:12",
"last_modify_ip": "",
"mode":1
}, {
"user_id": 121365,
"user_name": "PingWest品玩",
"category_id": "221",
"title": "神州租车找爹记",
"content": "",
"excerpt": "一爹难求。",
"article_status": 1,
"view_count": 47794,
"like_count": 2397,
"is_sticky": false,
"is_essence": false,
"comment_status": 0,
"comment_count": 9489,
"last_comment_user_id": "",
"avatar": "https://img.36krcdn.com/20200411/v2_f497b1c414d5489791569b3ea99df33d_img_000",
"publish_date": "2020-04-11 13:39:00",
"publish_ip": "",
"last_modify_date": "2020-04-11 13:44:11",
"last_modify_ip": "",
"mode":2
}, {
"user_id": 121366,
"user_name": "明星八爪娱",
"category_id": "225",
"title": "​抖音快手明星图鉴:哪个平台更适合明星“再就业”?",
"content": "",
"excerpt": "一个捧红了“十八线”明星,一个靠“偶像”获得新生",
"article_status": 1,
"view_count": 95348,
"like_count": 1356,
"is_sticky": false,
"is_essence": false,
"comment_status": 0,
"comment_count": 356,
"last_comment_user_id": "",
"avatar": ["https://img.36krcdn.com/20200411/v2_da4c26244cbc494c8e0e5918518e866c_img_png","https://img.36krcdn.com/20200411/v2_da4c26244cbc494c8e0e5918518e866c_img_png","https://img.36krcdn.com/20200411/v2_da4c26244cbc494c8e0e5918518e866c_img_png"],
"publish_date": "2020-04-11 13:38:00",
"publish_ip": "",
"last_modify_date": "2020-04-11 13:44:11",
"last_modify_ip": "",
"mode":3
}, {
"user_id": 121364,
"user_name": "神译局",
"category_id": "223",
"title": "动荡的市场中,你需要牢记巴菲特的这3个原则",
"content": "",
"excerpt": "本周股市下跌了不少——沃伦·巴菲特会作何反应?",
"article_status": 1,
"view_count": 86148,
"like_count": 4027,
"is_sticky": false,
"is_essence": false,
"comment_status": 0,
"comment_count": 6620,
"last_comment_user_id": "",
"avatar": "https://img.36krcdn.com/20200406/v2_232e9248d5c74ff989db57a0b6713abe_img_png",
"publish_date": "2020-04-11 12:45:02",
"publish_ip": "",
"last_modify_date": "2020-04-11 12:51:10",
"last_modify_ip": "",
"mode":4
}, {
"user_id": 121362,
"user_name": "资本侦探",
"category_id": "0",
"title": "连亏六年、股价跌破1美元,曾经的明星公司途牛怎么了?",
"content": "",
"excerpt": "携程、京东、红杉共同加持也无济于事。",
"article_status": 1,
"view_count": 83493,
"like_count": 1771,
"is_sticky": false,
"is_essence": false,
"comment_status": 0,
"comment_count": 2211,
"last_comment_user_id": "",
"avatar": "https://img.36krcdn.com/20200411/v2_61c1766736df49a0b2d0213624c0ebd2_img_000?x-oss-process=image/resize,m_mfit,w_432,h_288/crop,w_432,h_288,g_center",
"publish_date": "2020-04-11 12:37:11",
"publish_ip": "",
"last_modify_date": "2020-04-11 12:41:10",
"last_modify_ip": "",
"mode":5
}, {
"user_id": 121363,
"user_name": "Tech星球",
"category_id": "0",
"title": "独家 | 快手版「多闪」上线:「一甜面聊」布局视频社交",
"content": "",
"excerpt": "视频社交的时代来了。",
"article_status": 1,
"view_count": 97790,
"like_count": 636,
"is_sticky": false,
"is_essence": false,
"comment_status": 0,
"comment_count": 4027,
"last_comment_user_id": "",
"avatar": "https://img.36krcdn.com/20200411/v2_b92317dfc59948cea0f3c69a0357e519_img_000?x-oss-process=image/resize,m_mfit,w_432,h_288/crop,w_432,h_288,g_center",
"publish_date": "2020-04-11 12:36:58",
"publish_ip": "",
"last_modify_date": "2020-04-11 12:41:11",
"last_modify_ip": "",
"mode":6
}, {
"user_id": 121361,
"user_name": "神译局",
"category_id": "103",
"title": "2020年已经过去了四分之一,但改变自己为时不晚",
"content": "",
"excerpt": "种一棵树最好的时间是十年前,其次是现在",
"article_status": 1,
"view_count": 67302,
"like_count": 4148,
"is_sticky": false,
"is_essence": false,
"comment_status": 0,
"comment_count": 286,
"last_comment_user_id": "",
"avatar": "https://img.36krcdn.com/20200404/v2_d6613223fb15414897a0ba3449d00afd_img_png",
"publish_date": "2020-04-11 11:44:00",
"publish_ip": "",
"last_modify_date": "2020-04-11 11:52:11",
"last_modify_ip": "",
"mode":1
}, {
"user_id": 121360,
"user_name": "沈帅波",
"category_id": "221",
"title": "2020,市场部求生指南",
"content": "",
"excerpt": "短期思维的套利空间正在逐渐消失。",
"article_status": 1,
"view_count": 91108,
"like_count": 4029,
"is_sticky": false,
"is_essence": false,
"comment_status": 0,
"comment_count": 7126,
"last_comment_user_id": "",
"avatar": "https://img.36krcdn.com/20200410/v2_c5997a3640f54c2c880cff0906f6896c_img_000",
"publish_date": "2020-04-11 11:31:00",
"publish_ip": "",
"last_modify_date": "2020-04-11 11:33:15",
"last_modify_ip": "",
"mode":2
}, {
"user_id": 121359,
"user_name": "陈淑雅",
"category_id": "223",
"title": "定位新媒体整合营销服务商,「通明传媒」用“小V矩阵”打出差异化",
"content": "",
"excerpt": "近期通明传媒还成为了罗永浩抖音直播的官方授权招商服务合作伙伴。",
"article_status": 1,
"view_count": 38875,
"like_count": 4717,
"is_sticky": false,
"is_essence": false,
"comment_status": 0,
"comment_count": 9477,
"last_comment_user_id": "",
"avatar": ["https://img.36krcdn.com/20200410/v2_224a699a06504292804e4bdf70ca87bb_img_png","https://img.36krcdn.com/20200410/v2_224a699a06504292804e4bdf70ca87bb_img_png","https://img.36krcdn.com/20200410/v2_224a699a06504292804e4bdf70ca87bb_img_png"],
"publish_date": "2020-04-11 11:09:58",
"publish_ip": "",
"last_modify_date": "2020-04-11 11:21:10",
"last_modify_ip": "",
"mode":3
}, {
"user_id": 121358,
"user_name": "来咖智库",
"category_id": "0",
"title": "BAT的直播电商新战事",
"content": "",
"excerpt": "阿里做大、腾讯做深、百度做新。",
"article_status": 1,
"view_count": 41013,
"like_count": 3650,
"is_sticky": false,
"is_essence": false,
"comment_status": 0,
"comment_count": 682,
"last_comment_user_id": "",
"avatar": "https://img.36krcdn.com/20200410/v2_747fc8a18fde4da4b1ba1080d8e6aa04_img_000",
"publish_date": "2020-04-11 11:06:00",
"publish_ip": "",
"last_modify_date": "2020-04-11 11:12:11",
"last_modify_ip": "",
"mode":4
}, {
"user_id": 121357,
"user_name": "创业最前线",
"category_id": "0",
"title": "估值50亿美元,“种草”社区头牌,小红书如何走出商业化迷途?",
"content": "",
"excerpt": "小红书求变。",
"article_status": 1,
"view_count": 36498,
"like_count": 1523,
"is_sticky": false,
"is_essence": false,
"comment_status": 0,
"comment_count": 8731,
"last_comment_user_id": "",
"avatar": "https://img.36krcdn.com/20200410/v2_18c3a78cf8be42ccb45e4daba0c87c13_img_png",
"publish_date": "2020-04-11 10:41:00",
"publish_ip": "",
"last_modify_date": "2020-04-11 10:53:11",
"last_modify_ip": "",
"mode":5
}, {
"user_id": 121356,
"user_name": "神译局",
"category_id": "223",
"title": "在混乱和不确定的时期,你最需要的是这5个技能",
"content": "",
"excerpt": "自律就是即使你不想做某件事,但也能强迫自己去做的能力。",
"article_status": 1,
"view_count": 13776,
"like_count": 2214,
"is_sticky": false,
"is_essence": false,
"comment_status": 0,
"comment_count": 9514,
"last_comment_user_id": "",
"avatar": "https://img.36krcdn.com/20200401/v2_4afb7581cb5a4c36aac96a51829c13e0_img_png",
"publish_date": "2020-04-11 10:40:01",
"publish_ip": "",
"last_modify_date": "2020-04-11 10:41:11",
"last_modify_ip": "",
"mode":6
}, {
"user_id": 121355,
"user_name": "音乐先声",
"category_id": "0",
"title": "复工按下暂停键,演出报批遥遥无期,线下音乐路在何方?",
"content": "",
"excerpt": "阴霾终究会散去。",
"article_status": 1,
"view_count": 96989,
"like_count": 3607,
"is_sticky": false,
"is_essence": false,
"comment_status": 0,
"comment_count": 3580,
"last_comment_user_id": "",
"avatar": "https://img.36krcdn.com/20200410/v2_41365a0f26a244fdab8e3f5be081ed2b_img_000",
"publish_date": "2020-04-11 10:06:00",
"publish_ip": "",
"last_modify_date": "2020-04-11 10:11:12",
"last_modify_ip": "",
"mode":1
}, {
"user_id": 121354,
"user_name": "36氪出海",
"category_id": "0",
"title": "出海创投周报|阿里领投印度BigBasket6000万美元融资;Reliance向AI教育平台Embibe追加6600万美元投资",
"content": "",
"excerpt": "出海人的周末精选读物。",
"article_status": 1,
"view_count": 63561,
"like_count": 3817,
"is_sticky": false,
"is_essence": false,
"comment_status": 0,
"comment_count": 1433,
"last_comment_user_id": "",
"avatar": "https://img.36krcdn.com/20200410/v2_fb948f4c18de4b22927f0361d53f6caf_img_png",
"publish_date": "2020-04-11 10:00:01",
"publish_ip": "",
"last_modify_date": "2020-04-11 10:03:18",
"last_modify_ip": "",
"mode":2
}]
}
}
# clientDB使用许可协议
本协议是数字天堂(北京)网络技术有限公司(以下称“DCloud”)与您之间达成的关于clientDB框架(以下简称本框架)的协议。
本协议签订地点为中华人民共和国北京市海淀区。
您使用本框架即视为您已阅读并同意受本协议的约束。
## 知识产权及使用授权
您可以自由下载、使用、复制本框架而不需要向DCloud付费。
DCloud所拥有的知识产权,包括但不限于商标、专利、著作权、商业秘密、专有数据、源码,并不发生转移或共享。
您使用本框架开发的代码及输出物,包括但不限于网站、移动应用,其知识产权归属您所有。
本框架未包含第三方软件或技术,不涉及额外遵循第三方软件的授权协议问题。
## 您的义务
您不得破解、反编译、逆向工程本框架,不得破解或劫持本框架网络请求,不得对DCloud服务进行网络攻击,不得利用DCloud系统漏洞谋利或侵害DCloud利益,不得替换、删改本框架自带的非用户自定义文件。
未经书面许可您不可利用DCloud产品的全部或部分文件、模块、组件来制作与DCloud争夺用户的产品(通过DCloud插件市场服务开发者不属于此范围)。
如果您违反您的义务,DCloud将有权停止您使用本框架,造成的损失由您自行承担。
如果您给DCloud造成重大损失,或者在接收到DCloud的停止违约通知后拒不改正,DCloud将有权停止对您的DCloud所有产品和服务的使用授权,冻结您在DCloud所有产品服务中的预付款项和应收款项,因此造成的损失由您自行承担。
如果您的行为产生法律问题,DCloud有权追责您的法律责任。
## 隐私条款
本框架未进行任何数据采集、发送等涉及数据隐私的行为。
## 安全
您理解并同意,本框架同其他软件一样,无法承诺绝对的安全性。
当DCloud发现本框架的任何安全漏洞时,将及时在[社区](https://ask.dcloud.net.cn/explore/)发送公告,并将及时发布紧急更新补丁和升级推送通知。
## 免责声明
DCloud不因开发者使用本框架而承担任何法律责任。
## 协议修订
根据发展,DCloud可能会对本协议进行修改。修改时,DCloud会在产品或者网页中显著的位置发布相关信息以便及时通知到用户。如果您选择继续使用本框架,即表示您同意接受这些修改。
{
"id": "uni-list-news-title-image", // 必选 插件标识,需要保证唯一性
"name": "基于 uni-list 的云端一体新闻列表模板(图文混排) ", // 必选 插件名称
"version": "0.0.2", // 必选 插件版本
"description": "垂直排列,图文混排", // 插件描述
"author": "DCloud", // 插件作者
"license": "MIT",
"homepage": "https://ext.dcloud.net.cn/plugin?id=2584", // 插件地址
"files": [ // 必选 插件自身文件列表(支持通配,规范:https://docs.npmjs.com/files/package.json#files)
"components/uni-badge",
"components/uni-icons",
"components/uni-list",
"components/uni-list-item",
"components/uni-load-more",
"components/uni-section",
"common/uni-ui.scss",
"pages/uni-list-news-title-image/uni-list-news-title-image.vue"
],
"bundledFiles": [ // 插件依赖的文件列表,通常是依赖的三方插件的 files 合并
"cloudfunctions/unicloud-db",
"cloudfunctions/common/uni-id",
"js_sdk"
]
}
{
"pages": [ //pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pages
{
"path": "pages/uni-list-news-title-image/uni-list-news-title-image",
"style": {
"navigationBarTitleText": "垂直排列,图文混排",
"enablePullDownRefresh": true
}
}
]
}
## 什么是 uniCloud
uniCloud 是 DCloud 联合阿里云、腾讯云,为开发者提供的基于 serverless 模式和 js 编程的云开发平台,更多请参考[uniCloud文档](https://uniapp.dcloud.io/uniCloud)
## 云端一体页面的优势是什么
过去,开发一个列表,需要在后端设计数据库,提供接口,前端写列表,处理分页、下拉刷新,并保证长列表的性能,全套工作下来需要1、2天。
现在有了云端一体列表,上述工作都不用做了,页面拿来就用。
在HBuilderX 2.9+,新建页面时,可以直接选择大量云端一体页面模板,数据库、后台接口、前端页面都有了。
当然,您也可以调整,自定义数据库表和前端的ui。
## 后台数据表
后台数据表使用 [openDB](https://gitee.com/dcloud/opendb/tree/master) 设计规范,它约定了一个标准用户表的表名和字段定义,并且基于nosql的特性,可以由开发者自行扩展字段。`openDB`[uniCloud](https://uniapp.dcloud.io/uniCloud/README)的重要软基建,支撑`uniCloud`数字生态的发展。
## 页面模板简介
列表是我们在项目开发中常见的一个需求,对于基础列表 [uni-list](https://ext.dcloud.net.cn/plugin?id=24) 组件已经提供了大部分常见的功能。
但是如果我们想要实现一个复杂的新闻列表,难免需要我们去实现不同的复杂列表布局,例如一些图文混排、左图右文、右图左文、大图略缩图、多图略缩图等多种不同排版组合,同时我们可能还需要应对不同的数据展示。
那么现在我们给大家提供了一个基于 uni-list 组件的云端一体化新闻列表页面模板,帮大家快速构建一个复杂多变的新闻列表。
当前模板做了四个事情:
- 通过 `openDB`[opendb-news-articles](https://gitee.com/dcloud/opendb/tree/master/collection/opendb-news-articles)表规范表结构
- 通过 [unicloud-db](https://ext.dcloud.net.cn/plugin?id=2314) 在本地操作数据库获取数据
- 实现常见的六种新闻列表排版,减少实现同类需求构建代码的工作量
- 实现简单的下拉刷新,上拉加载
**Tips**
- 暂不支持 nvue 页面
## 使用说明
当前模板是在 uni-list 组件基础上,通过插槽的方式实现了不同的新闻列表排版,同时使用了 [unicloud-db](https://ext.dcloud.net.cn/plugin?id=2314) 完成了云端一体化。大大减少了大家的的代码开发时间。
1.`cloudfunctions` 目录,右键上传所有云函数及公共模块
2.`cloudfunctions` > `db_init.json` 文件,右键初始化数据库,数据结构参考 `openDB`[opendb-news-articles](https://gitee.com/dcloud/opendb/tree/master/collection/opendb-news-articles)表结构
3. 运行到 Chrome 查看效果
## 代码说明
> 代码逻辑以及样式见代码示例
### 基本排版
我们提供了六种排版布局,基本上包括了市面上大部分的新闻类列表的常见排版,当前模板为 `垂直排列,图文混排` , 具体实现代码如下
```html
<uni-list>
<!-- 垂直排列,图文混排 -->
<uni-list-item direction="column">
<template v-slot:header>
<view class="uni-title">垂直排列的图文混排列表,内容通过 body 插槽实现,底部通过 footer 插槽实现完全自定样式</view>
</template>
<template v-slot:body>
<view class="uni-list-box">
<view class="uni-thumb"><image src="/static/logo.png" mode="aspectFill"></image></view>
<view class="uni-content">
<view class="uni-title-sub uni-ellipsis-2">这里是列表的副标题,最多可以显示两行,多余文字会隐藏并显示省略号</view>
<view class="uni-note">Dcloud 128评论 21 赞</view>
</view>
</view>
</template>
<template v-slot:footer>
<view class="uni-footer">
<text class="uni-footer-text">评论</text>
<text class="uni-footer-text">点赞</text>
<text class="uni-footer-text">分享</text>
</view>
</template>
</uni-list-item>
</uni-list>
```
## 样式覆盖
模板中通过 `common/uni-ui.scss` 定义了一些标题、图片等的基础样式
如果以上六种排版不能满足需求或者需要调整现有排版的样式,直接修改或覆盖对应样式即可。
## 其他模板样式
1. 云端一体混合布局:[https://ext.dcloud.net.cn/plugin?id=2546](https://ext.dcloud.net.cn/plugin?id=2546)
2. 云端一体垂直布局,大图模式:[https://ext.dcloud.net.cn/plugin?id=2583](https://ext.dcloud.net.cn/plugin?id=2583)
3. (当前模板)云端一体垂直布局,多行图文混排:[https://ext.dcloud.net.cn/plugin?id=2584](https://ext.dcloud.net.cn/plugin?id=2584)
4. 云端一体垂直布局,多图模式:[https://ext.dcloud.net.cn/plugin?id=2585](https://ext.dcloud.net.cn/plugin?id=2585)
5. 云端一体水平布局,左图右文:[https://ext.dcloud.net.cn/plugin?id=2586](https://ext.dcloud.net.cn/plugin?id=2586)
6. 云端一体水平布局,左文右图:[https://ext.dcloud.net.cn/plugin?id=2587](https://ext.dcloud.net.cn/plugin?id=2587)
7. 云端一体垂直布局,无图模式,主标题+副标题:[https://ext.dcloud.net.cn/plugin?id=2588](https://ext.dcloud.net.cn/plugin?id=2588)
\ No newline at end of file
......@@ -3,7 +3,6 @@ module.exports = function(){
console.log('开始执行脚本change_after');
let changelog = fs.readFileSync(process.cwd() + '/changelog.md', 'utf-8').split("##")[1].split("\n").slice(1).join(' ');
console.log(changelog);
// 这里是修改完相关敏感配置后执行的脚本,你可以在这里自定义逻辑,
// 比如执行git提交命令
var shell = require("shelljs");
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册