Browse Source

对接接口

master
邓平艺 5 years ago
parent
commit
f04dc14f2e
  1. 1
      common/api.js
  2. 2
      common/http.interceptor.js
  3. 23
      pages.json
  4. 7
      pages/index/index.vue
  5. 51
      pages/my/editInfo.vue
  6. 4
      pages/my/index.vue
  7. 1
      pages/my/memberDetails.vue
  8. 2
      pages/my/officialAccount.vue
  9. 80
      pages/userList/userList.vue
  10. 25
      pages/webview/index.vue

1
common/api.js

@ -15,3 +15,4 @@ export const API_MEMBERS_ALL = '/api/members/all'; // 会员列表
export const API_MEMBERS_DETAIL = '/api/members/detail'; // 会员详情
export const API_MEMBERS_PARAMS = '/api/members/params'; // 获得查询参数
export const API_UCENTER = '/api/ucenter'; // 个人中心落地页
export const API_USER_DETAIL = '/api/user/detail'; // 个人中心,个人资料

2
common/http.interceptor.js

@ -11,7 +11,7 @@ const install = (Vue, vm) => {
dataType: 'json', // 返回数据时自动 JSON.parse()
showLoading: true, // 是否显示请求中的loading
loadingText: '正在加载',
loadingTime: 800 // 延迟800毫秒时显示加载框
loadingTime: 0 // 延迟800毫秒时显示加载框
});
// 请求前拦截, 现在不做拦截

23
pages.json

@ -10,6 +10,13 @@
"enablePullDownRefresh": true
}
},
{
"path": "pages/login/index",
"style": {
"navigationBarTitleText": "登录中",
"enablePullDownRefresh": true
}
},
{
"path": "pages/wallMember/wallMember",
"style": {
@ -73,13 +80,6 @@
"navigationBarTitleText": "我要上墙"
}
},
{
"path": "pages/login/index",
"style": {
"navigationBarTitleText": "登录",
"enablePullDownRefresh": true
}
},
{
"path": "pages/my/index",
"style": {
@ -201,7 +201,8 @@
{
"path": "pages/userList/userList",
"style": {
"navigationBarTitleText": "相亲交友"
"navigationBarTitleText": "相亲交友",
"enablePullDownRefresh": true
}
},
{
@ -292,6 +293,12 @@
"navigationBarBackgroundColor": "#FE3EA5",
"navigationBarTextStyle": "white"
}
},
{
"path": "pages/webview/index",
"style": {
"navigationBarTitleText": "相亲交友"
}
}
],
"globalStyle": {

7
pages/index/index.vue

@ -70,7 +70,6 @@
// #ifdef H5
this.href_str = JSON.stringify(location.href);
let options = this.strToObj();
console.log("options", options)
if(options.code){
this.login(options.code)
}else if(this.$isRight(uni.getStorageSync('user_info'))){
@ -104,8 +103,12 @@
code: code,
scopes: 'snsapi_userinfo'
}).then(res => {
console.log(res)
uni.setStorageSync('user_info', res?.data?.user);
var url = window.location.href; //url
if(url.indexOf("?")!=-1){ //
url = url.replace(/(\?|#)[^'"]*/, ''); //
window.history.pushState({}, 0, url);
}
this.getMembersWall();
this.getMembers();
}).catch(err => {

51
pages/my/editInfo.vue

@ -3,55 +3,49 @@
<view class="edit-head">
<!-- @click="$url('/pages/my/photoImage')" -->
<view>
<image src="../../static/logo.png" mode="aspectFill" style="width: 150rpx;height: 150rpx;border-radius: 10rpx;"></image>
<lf-image :src="member.avatar_url" mode="aspectFill" style="width: 150rpx;height: 150rpx;border-radius: 10rpx;"></lf-image>
</view>
<view class="lf-font-32 lf-color-222">
<!-- <view class="lf-font-32 lf-color-222">
点击上传形象照
</view>
<view class="lf-font-28 lf-color-777 lf-p-l-32 lf-p-r-32">
确保个人形象照片为本人清晰正脸照一张良好的形象照更能吸引到别人哦
</view> -->
</view>
</view>
<view class="edit-tag">
<!-- <view class="edit-tag">
<view class="lf-row-between lf-w-100 lf-m-b-30">
<view class="lf-color-222 lf-font-32 authen-title lf-p-l-20">内心独白</view>
<!-- <view class="lf-font-28 lf-color-777" @click="$url('/pages/my/innerMonologue')">去编辑<u-icon name="arrow-right lf-m-l-15 lf-font-22"></u-icon></view> -->
<view class="lf-font-28 lf-color-777" @click="$url('/pages/my/innerMonologue')">去编辑<u-icon name="arrow-right lf-m-l-15 lf-font-22"></u-icon></view>
</view>
<view class="lf-color-777 lf-font-28">
了解Ta的购车住房情况和家庭成员资料成员资料成员资料成员资料成员资料成员资料成员资料
</view>
</view>
<view class="edit-tag edit-tag1">
</view> -->
<view class="edit-tag edit-tag1" v-if="member.base && member.base.length">
<view class="lf-row-between lf-w-100 lf-m-b-30">
<view class="lf-color-222 lf-font-32 authen-title lf-p-l-20">基本资料</view>
<!-- <view class="lf-font-28 lf-color-777" @click="$url('/pages/my/basicInformation')">去完善<u-icon name="arrow-right lf-m-l-15 lf-font-22"></u-icon></view> -->
</view>
<view class="lf-color-777 lf-font-28 tag-content">
<view class="personal-tag">其他省市</view>
<view class="personal-tag">未婚</view>
<view class="personal-tag">180cm</view>
<view class="personal-tag">70kg</view>
<view class="personal-tag" v-for="(item, index) in member.base" :key="index">{{ item }}</view>
</view>
</view>
<view class="edit-tag edit-tag1">
<view class="edit-tag edit-tag1" v-if="member.work && member.work.length">
<view class="lf-row-between lf-w-100 lf-m-b-30">
<view class="lf-color-222 lf-font-32 authen-title lf-p-l-20">工作经济家庭</view>
<!-- <view class="lf-font-28 lf-color-777" @click="$url('/pages/my/workEconomy')">去完善<u-icon name="arrow-right lf-m-l-15 lf-font-22"></u-icon></view> -->
</view>
<view class="lf-color-777 lf-font-28 tag-content">
<view class="personal-tag">已购车无贷款</view>
<view class="personal-tag">本科</view>
<view class="personal-tag">6-8</view>
<view class="personal-tag" v-for="(item, index) in member.work" :key="index">{{ item }}</view>
</view>
</view>
<view class="edit-tag edit-tag1">
<view class="edit-tag edit-tag1" v-if="member.require && member.require.length">
<view class="lf-row-between lf-w-100 lf-m-b-30">
<view class="lf-color-222 lf-font-32 authen-title lf-p-l-20">择偶要求</view>
<!-- <view class="lf-font-28 lf-color-777" @click="$url('/pages/my/matePerfance')">去完善<u-icon name="arrow-right lf-m-l-15 lf-font-22"></u-icon></view> -->
</view>
<view class="lf-color-777 lf-font-28 tag-content">
<view class="personal-tag">未婚</view>
<view class="personal-tag">180cm</view>
<view class="personal-tag" v-for="(item, index) in member.require" :key="index">{{ item }}</view>
</view>
</view>
<!-- #ifdef H5 -->
@ -61,6 +55,24 @@
</template>
<script>
export default {
data() {
return {
member: {}
}
},
onLoad(){
this.getMemberDetail();
},
methods: {
getMemberDetail(){
this.$http(this.API.API_USER_DETAIL).then(res => {
let member = res.data.member;
this.member = member;
})
}
}
}
</script>
<style>
@ -102,7 +114,8 @@
.edit-head {
background-color: white;
height: 400rpx;
// height: 400rpx;
height: 200rpx;
width: 100%;
display: flex;
flex-direction: column;

4
pages/my/index.vue

@ -19,7 +19,7 @@
绑定手机号
</view> -->
</view>
<view class="adv" @click="$url('/pages/my/getRedLine')">
<view class="adv">
<view class="lf-row-between">
<view>
<view class="logo-my">
@ -108,6 +108,8 @@
},
onLoad(){
this.getData();
// todo
// todo
},
methods: {
showRedthread() {

1
pages/my/memberDetails.vue

@ -103,6 +103,7 @@
onLoad(options){
this.number_id = options.id || 0;
this.getMemberDetail();
// todo
},
methods: {
getMemberDetail(){

2
pages/my/officialAccount.vue

@ -11,7 +11,7 @@
· 报名上头条展现最美的自己吸引更多的异性脱单就是要自信你本来就很优秀
</view>
<view class="lf-row-center">
<button class="official-btn">点击关注</button>
<button class="official-btn" @click="$url('/pages/webview/index')">点击关注</button>
</view>
</view>
</view>

80
pages/userList/userList.vue

@ -35,7 +35,7 @@
</view>
</view>
<view class="filter-foot">
<button class="filter-btn" @click="reset">重置条件</button>
<button class="filter-btn" @click="resetFilter">重置条件</button>
<button class="filter-btn solid-btn" @click="comfirm">确定</button>
</view>
</view>
@ -78,13 +78,12 @@
onLoad(options){
console.log(this.filter)
this.name = options.name || this.name;
this.getMemberParams();
if(this.name == '搜索') {
this.show_filter = true;
this.filter_key = 'search';
this.on_focus = true;
}
this.getMemberParams();
this.getMembers();
},
methods: {
//
@ -93,13 +92,16 @@
console.log(res, "---------");
this.filterObj = res.data;
this.filter = this.productionObj();
this.getMembers();
})
},
//
getMembers(){
getMembers(options = {}){
let params = this.getSelectFilter();
this.$http(this.API.API_MEMBERS_ALL, {
page: this.page,
pagesize: this.page_size
pagesize: this.page_size,
...params
}).then(res => {
let members = res.data.members.data || [];
let isPage = this.$isRight(res.data.members.next_page_url);
@ -108,6 +110,12 @@
this.loading_class = false;
this.loading_text = '已加载全部数据~';
}
if(options.refresh){
this.$msg('刷新成功', {icon: 'success'})
uni.stopPullDownRefresh();
}else if(options.reset){
this.$msg('重置成功');
}
this.members = members;
})
},
@ -127,7 +135,7 @@
//
activeItem(value){
this.filter[this.filter_key].selected = value;
// TODO
this.comfirm();
},
//
switchCondition(key, value){
@ -137,16 +145,64 @@
inputBlur(key, event){
this.filter[this.filter_key][key] = event.detail.value;
},
//
//
comfirm(){
this.show_filter = false;
this.reset();
this.getMembers();
},
reset(){
this.page = 1;
this.isPage = true;
this.loading_class = true;
this.loading_text = '正在加载中';
},
//
resetFilter(){
this.filter = this.productionObj();
this.show_filter = false;
this.reset();
this.getMembers({reset: true});
},
//
comfirm(){
this.$msg('筛选成功!');
this.show_filter = false;
console.log(this.filter);
getSelectFilter(){
let filter = this.filter;
let obj = {};
for(let i in filter){
if(i == 'search'){
for(let j in filter[i]){
if(j == 'search_value'){
obj[j] = filter[i][j];
}else if(j != 'name'){
filter[i][j].data.map(item => {
if(filter[i][j].selected == item.text){
obj[j] = item.value;
};
})
}
}
}else{
filter[i].data.map(item => {
if(filter[i].selected == item.text){
if(Array.isArray(item.value)){
obj[i] = JSON.stringify(item.value);
}else{
obj[i] = item.value;
}
};
})
}
}
return obj;
}
},
onPullDownRefresh(){
this.reset();
this.getMembers({refresh: true});
},
onReachBottom(){
if(this.isPage){
this.page++;
this.getMembers();
}
}
}

25
pages/webview/index.vue

@ -0,0 +1,25 @@
<template>
<view>
<web-view :src="src"></web-view>
</view>
</template>
<script>
export default {
data(){
return {
src: 'https://mp.weixin.qq.com/mp/profile_ext?action=home&__biz=Mzg2MjY2OTI3MA==&scene=124&uin=&key=&devicetype=Windows+10+x64&version=6303052a&lang=zh_CN&a8scene=7&fontgear=2'
}
},
onLoad(){
},
methods: {
}
}
</script>
<style lang="scss" scoped="scoped">
</style>
Loading…
Cancel
Save