@ -0,0 +1,31 @@ |
|||
/* |
|||
* Eslint config file |
|||
* Documentation: https://eslint.org/docs/user-guide/configuring/
|
|||
* Install the Eslint extension before using this feature. |
|||
*/ |
|||
module.exports = { |
|||
env: { |
|||
es6: true, |
|||
browser: true, |
|||
node: true, |
|||
}, |
|||
ecmaFeatures: { |
|||
modules: true, |
|||
}, |
|||
parserOptions: { |
|||
ecmaVersion: 2018, |
|||
sourceType: 'module', |
|||
}, |
|||
globals: { |
|||
wx: true, |
|||
App: true, |
|||
Page: true, |
|||
getCurrentPages: true, |
|||
getApp: true, |
|||
Component: true, |
|||
requirePlugin: true, |
|||
requireMiniProgram: true, |
|||
}, |
|||
// extends: 'eslint:recommended',
|
|||
rules: {}, |
|||
} |
|||
@ -0,0 +1,2 @@ |
|||
miniprogram_npm/ |
|||
node_modules/ |
|||
@ -0,0 +1,50 @@ |
|||
import service from '../utils/request' |
|||
|
|||
// 获取首页数据
|
|||
const getHome = (options) => { |
|||
return service({ |
|||
url: 'index', |
|||
method: 'POST', |
|||
data: options, |
|||
}) |
|||
} |
|||
// 获取片场展示数据
|
|||
const getDisplay = (options) => { |
|||
return service({ |
|||
url: 'cate', |
|||
method: 'GET', |
|||
data: options |
|||
}) |
|||
} |
|||
//产品列表
|
|||
const getDisplayProduct = (options) => { |
|||
return service({ |
|||
url: 'product', |
|||
method: 'GET', |
|||
data: options, |
|||
}) |
|||
} |
|||
//产品详情
|
|||
const getDetailProduct = (options) => { |
|||
return service({ |
|||
url: 'detail_product', |
|||
method: 'GET', |
|||
data: options, |
|||
}) |
|||
} |
|||
//联系我们
|
|||
const getAbout = (options) => { |
|||
return service({ |
|||
url: 'about', |
|||
method: 'GET', |
|||
data: options, |
|||
}) |
|||
} |
|||
|
|||
|
|||
|
|||
|
|||
|
|||
module.exports = { |
|||
getHome,getDisplay,getDisplayProduct,getDetailProduct,getAbout |
|||
} |
|||
@ -0,0 +1,53 @@ |
|||
// app.js
|
|||
App({ |
|||
globalData: { |
|||
id: 0 |
|||
}, |
|||
onLaunch() { |
|||
// 展示本地存储能力
|
|||
/* const logs = wx.getStorageSync('logs') || [] |
|||
logs.unshift(Date.now()) |
|||
wx.setStorageSync('logs', logs) */ |
|||
this.globalData.userInfo = wx.getStorageSync('userInfo') || '' |
|||
|
|||
wx.getSystemInfo({ |
|||
success: res => { |
|||
this.globalData.brand = res.model |
|||
}, |
|||
}) |
|||
|
|||
|
|||
let menuButtonObject = wx.getMenuButtonBoundingClientRect(); |
|||
wx.getSystemInfo({ |
|||
success: res => { |
|||
|
|||
//导航高度
|
|||
let statusBarHeight = res.statusBarHeight, |
|||
navTop = menuButtonObject.top, |
|||
navHeight = statusBarHeight + menuButtonObject.height + (menuButtonObject.top - statusBarHeight)*2; |
|||
this.globalData.navHeight = navHeight; |
|||
this.globalData.navTop = navTop; |
|||
this.globalData.windowHeight = res.windowHeight; |
|||
}, |
|||
fail(err) { |
|||
console.log(err); |
|||
} |
|||
}) |
|||
}, |
|||
globalData: { |
|||
baseurl: 'https://api.junfei.iiixo.com/api/Content/', |
|||
userInfo: '', |
|||
version: '1.0', // 版本号 常量
|
|||
loginClient: 3, // 客户端类型 0:web 1:安卓 2:iOS 3:小程序
|
|||
brand: null, // 设备型号
|
|||
themeVars: { |
|||
rateIconFullColor: '#07c160', |
|||
sliderBarHeight: '4px', |
|||
sliderButtonWidth: '20px', |
|||
sliderButtonHeight: '20px', |
|||
sliderActiveBackgroundColor: '#07c160', |
|||
buttonPrimaryBorderColor: '#07c160', |
|||
buttonPrimaryBackgroundColor: '#07c160', |
|||
}, |
|||
} |
|||
}) |
|||
@ -0,0 +1,46 @@ |
|||
{ |
|||
"tabBar": { |
|||
"custom": true, |
|||
"color": "#000000", |
|||
"selectedColor": "#000000", |
|||
"backgroundColor": "#000000", |
|||
"list": [ |
|||
{ |
|||
"pagePath": "pages/home/home", |
|||
"text": "首页" |
|||
}, |
|||
{ |
|||
"pagePath": "pages/setDisplay/setDisplay", |
|||
"text": "片场展示" |
|||
}, |
|||
{ |
|||
"pagePath": "pages/contactUs/contactUs", |
|||
"text": "联系我们" |
|||
} |
|||
] |
|||
}, |
|||
"usingComponents": { |
|||
"van-config-provider": "@vant/weapp/config-provider/index" |
|||
}, |
|||
"lazyCodeLoading": "requiredComponents", |
|||
"pages": [ |
|||
|
|||
"pages/home/home", |
|||
"pages/contactUs/contactUs", |
|||
"pages/setDisplay/setDisplay", |
|||
"pages/details/details", |
|||
"pages/logs/logs" |
|||
], |
|||
"window": { |
|||
"backgroundTextStyle": "light", |
|||
"navigationBarBackgroundColor": "#fff", |
|||
"navigationBarTextStyle": "black" |
|||
}, |
|||
|
|||
"permission": { |
|||
"scope.userLocation": { |
|||
"desc": "导航需要" |
|||
} |
|||
}, |
|||
"sitemapLocation": "sitemap.json" |
|||
} |
|||
@ -0,0 +1,12 @@ |
|||
/**app.wxss**/ |
|||
@import './miniprogram_npm/@vant/weapp/common/index.wxss'; |
|||
.container { |
|||
height: 100%; |
|||
box-sizing: border-box; |
|||
font-family: -apple-system, BlinkMacSystemFont, 'Helvetica Neue', Helvetica, |
|||
Segoe UI, Arial, Roboto, 'PingFang SC', 'miui', 'Hiragino Sans GB', 'Microsoft Yahei', |
|||
sans-serif; |
|||
} |
|||
|
|||
|
|||
|
|||
|
After Width: | Height: | Size: 473 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 5.3 KiB |
|
After Width: | Height: | Size: 4.4 KiB |
|
After Width: | Height: | Size: 8.6 KiB |
|
After Width: | Height: | Size: 103 KiB |
|
After Width: | Height: | Size: 123 KiB |
|
After Width: | Height: | Size: 241 KiB |
|
After Width: | Height: | Size: 2.2 KiB |
|
After Width: | Height: | Size: 671 B |
|
After Width: | Height: | Size: 460 B |
|
After Width: | Height: | Size: 714 B |
|
After Width: | Height: | Size: 484 B |
|
After Width: | Height: | Size: 852 B |
|
After Width: | Height: | Size: 578 B |
|
After Width: | Height: | Size: 1.6 KiB |
@ -0,0 +1,24 @@ |
|||
Component({ |
|||
options: { |
|||
addGlobalClass: true |
|||
}, |
|||
|
|||
externalClasses: ['custom-class'], |
|||
|
|||
properties: { |
|||
info: null, |
|||
name: String, |
|||
size: String, |
|||
color: String, |
|||
block:{ |
|||
type:Boolean, |
|||
value:false |
|||
} |
|||
}, |
|||
|
|||
methods: { |
|||
onClick() { |
|||
this.triggerEvent('click'); |
|||
} |
|||
} |
|||
}); |
|||
@ -0,0 +1,3 @@ |
|||
{ |
|||
"component": true |
|||
} |
|||
@ -0,0 +1,7 @@ |
|||
<view |
|||
class=" custom-class ss-font ss-icon-{{ name }} " |
|||
style="{{ color ? 'color: ' + color : '' }}; {{ size ? 'font-size: ' + size : '' }}; {{ block ? 'display:block ' : '' }}" |
|||
bind:tap="onClick" |
|||
> |
|||
<view wx:if="{{ info !== null }}" class="ss-icon__info">{{ info }}</view> |
|||
</view> |
|||
@ -0,0 +1,52 @@ |
|||
/* @font-face { |
|||
font-family: 'ss-font'; |
|||
src: url('https://www.52cxy.cn/wxapp/teacher/font/iconfont.eot'); |
|||
src: url('https://www.52cxy.cn/wxapp/teacher/font/iconfont.woff') format('woff'), |
|||
url('https://www.52cxy.cn/wxapp/teacher/font/iconfont.ttf') format('truetype'), |
|||
url('https://www.52cxy.cn/wxapp/teacher/font/iconfont.svg') format('svg'); |
|||
} */ |
|||
|
|||
@font-face { |
|||
font-family: 'ss-font'; /* project id 1360796 */ |
|||
src: url('//at.alicdn.com/t/font_1360796_62vxgaud7d6.eot'); |
|||
src: url('//at.alicdn.com/t/font_1360796_62vxgaud7d6.eot?#iefix') format('embedded-opentype'), |
|||
url('//at.alicdn.com/t/font_1360796_62vxgaud7d6.woff2') format('woff2'), |
|||
url('//at.alicdn.com/t/font_1360796_62vxgaud7d6.woff') format('woff'), |
|||
url('//at.alicdn.com/t/font_1360796_62vxgaud7d6.ttf') format('truetype'), |
|||
url('//at.alicdn.com/t/font_1360796_62vxgaud7d6.svg#ss-font') format('svg'); |
|||
} |
|||
.ss-icon__info { |
|||
position: absolute; |
|||
right: 0; |
|||
top: -8px; |
|||
color: #fff; |
|||
font-size: 12px; |
|||
font-family: PingFang SC, Helvetica Neue, Arial, sans-serif; |
|||
text-align: center; |
|||
box-sizing: border-box; |
|||
padding: 0 3px; |
|||
min-width: 16px; |
|||
line-height: 14px; |
|||
border-radius: 16px; |
|||
background-color: #f44; |
|||
-webkit-transform: translateX(50%); |
|||
transform: translateX(50%); |
|||
-webkit-transform-origin: 100%; |
|||
transform-origin: 100%; |
|||
white-space: nowrap; |
|||
} |
|||
|
|||
.ss-font { |
|||
font-family: "ss-font" !important; |
|||
display: inline-block; |
|||
font: normal normal normal 14px/1 ss-icon; |
|||
font-size: inherit; |
|||
text-rendering: auto; |
|||
position: relative; |
|||
} |
|||
.ss-icon-index:before { |
|||
content: "\e688"; |
|||
} |
|||
.ss-icon-back:before { |
|||
content: "\e9c9"; |
|||
} |
|||
@ -0,0 +1,59 @@ |
|||
// components/navbar/index.js
|
|||
const App = getApp(); |
|||
|
|||
Component({ |
|||
options: { |
|||
addGlobalClass: true, |
|||
}, |
|||
externalClasses: ['custom-class'], |
|||
/** |
|||
* 组件的属性列表 |
|||
*/ |
|||
properties: { |
|||
pageName:String, |
|||
showNav: { |
|||
type: Boolean, |
|||
value: true |
|||
}, |
|||
bgColor:{ |
|||
type: String, |
|||
value: '#fff' |
|||
}, |
|||
iconColor:{ |
|||
type: String, |
|||
value: '#000' |
|||
} |
|||
}, |
|||
|
|||
/** |
|||
* 组件的初始数据 |
|||
*/ |
|||
data: { |
|||
|
|||
}, |
|||
lifetimes: { |
|||
attached: function () { |
|||
this.setData({ |
|||
navHeight: App.globalData.navHeight, |
|||
navTop: App.globalData.navTop |
|||
}) |
|||
} |
|||
}, |
|||
/** |
|||
* 组件的方法列表 |
|||
*/ |
|||
methods: { |
|||
//回退
|
|||
_navBack: function () { |
|||
wx.navigateBack({ |
|||
delta: 1 |
|||
}) |
|||
}, |
|||
//回主页
|
|||
_toIndex: function () { |
|||
wx.switchTab({ |
|||
url: '/pages/tabBar/index/index' |
|||
}) |
|||
}, |
|||
} |
|||
}) |
|||
@ -0,0 +1,6 @@ |
|||
{ |
|||
"component": true, |
|||
"usingComponents": { |
|||
"ss-icon": "../icon/index" |
|||
} |
|||
} |
|||
@ -0,0 +1,9 @@ |
|||
<!--components/navbar/index.wxml--> |
|||
|
|||
<view wx:if="{{showNav}}" class="navbar-action-wrap navbar-action-group row item-center" style='top:{{navTop}}px;'> |
|||
<ss-icon name="back" color="{{iconColor}}" size="15px" block="{{true}}" class="navbar-action_item" bind:click="_navBack"></ss-icon> |
|||
|
|||
</view> |
|||
<view class='navbar-title' style='top:{{navTop}}px'> |
|||
{{pageName}} |
|||
</view> |
|||
@ -0,0 +1,65 @@ |
|||
/* components/navbar/index.wxss */ |
|||
|
|||
.navbar { |
|||
width: 100%; |
|||
overflow: hidden; |
|||
position: relative; |
|||
top: 0; |
|||
left: 0; |
|||
z-index: 10; |
|||
flex-shrink: 0; |
|||
} |
|||
|
|||
.navbar-title { |
|||
width: 100%; |
|||
box-sizing: border-box; |
|||
padding-left: 115px; |
|||
padding-right: 115px; |
|||
height: 32px; |
|||
line-height: 32px; |
|||
text-align: center; |
|||
position: fixed; |
|||
left: 0; |
|||
z-index: 10; |
|||
color: #333; |
|||
font-size: 13px; |
|||
font-weight: normal; |
|||
text-overflow: ellipsis; |
|||
overflow: hidden; |
|||
white-space: nowrap; |
|||
} |
|||
|
|||
.navbar-action-wrap { |
|||
display: -webkit-flex; |
|||
display: flex; |
|||
-webkit-box-align: center; |
|||
-ms-flex-align: center; |
|||
-webkit-align-items: center; |
|||
align-items: center; |
|||
position: fixed; |
|||
left: 10px; |
|||
z-index: 11; |
|||
line-height: 1; |
|||
padding-top: 4px; |
|||
padding-bottom: 4px; |
|||
} |
|||
|
|||
/* .navbar-action-group { |
|||
border: 1px solid #f0f0f0; |
|||
border-radius: 20px; |
|||
overflow: hidden; |
|||
} */ |
|||
|
|||
.navbar-action_item { |
|||
padding: 3px 0; |
|||
color: #333; |
|||
} |
|||
|
|||
.navbar-action-group .navbar-action_item { |
|||
/* border-right: 1px solid #f0f0f0; */ |
|||
padding: 3px 14px; |
|||
} |
|||
|
|||
.navbar-action-group .last { |
|||
border-right: none; |
|||
} |
|||
@ -0,0 +1,51 @@ |
|||
Component({ |
|||
data: { |
|||
active: 0, |
|||
list: [ |
|||
{ |
|||
blur: '../assets/imgs/tabbar/tab1_blur.png', |
|||
focus: '../assets/imgs/tabbar/tab1_focus.png', |
|||
text: '首页', |
|||
url: '/pages/home/home' |
|||
}, |
|||
{ |
|||
blur: '../assets/imgs/tabbar/tab2_blur.png', |
|||
focus: '../assets/imgs/tabbar/tab2_focus.png', |
|||
text: '片场展示', |
|||
url: '/pages/setDisplay/setDisplay' |
|||
}, |
|||
{ |
|||
blur: '../assets/imgs/tabbar/tab3_blur.png', |
|||
focus: '../assets/imgs/tabbar/tab3_focus.png', |
|||
text: '联系我们', |
|||
url: '/pages/contactUs/contactUs' |
|||
} |
|||
], |
|||
}, |
|||
|
|||
attached() { |
|||
const tab = this.createSelectorQuery() |
|||
tab.select('.myTabbar').boundingClientRect((rect) => { |
|||
// console.log(rect)
|
|||
wx.setStorageSync('tabHeight', rect.height) |
|||
}).exec() |
|||
}, |
|||
|
|||
methods: { |
|||
onChange(event) { |
|||
this.setData({ active: event.detail }); |
|||
wx.switchTab({ |
|||
url: this.data.list[event.detail].url |
|||
|
|||
}); |
|||
}, |
|||
|
|||
init() { |
|||
const page = getCurrentPages().pop(); |
|||
this.setData({ |
|||
active: this.data.list.findIndex(item => item.url === `/${page.route}`) |
|||
}); |
|||
|
|||
} |
|||
} |
|||
}); |
|||
@ -0,0 +1,7 @@ |
|||
{ |
|||
"component": true, |
|||
"usingComponents": { |
|||
"van-tabbar": "@vant/weapp/tabbar/index", |
|||
"van-tabbar-item": "@vant/weapp/tabbar-item/index" |
|||
} |
|||
} |
|||
@ -0,0 +1,24 @@ |
|||
<van-tabbar |
|||
class="myTabbar" |
|||
active="{{ active }}" |
|||
bind:change="onChange" |
|||
active-color="#000" |
|||
inactive-color="#666" |
|||
placeholder="{{ true }}" |
|||
safe-area-inset-bottom="{{ true }}"> |
|||
<van-tabbar-item wx:for="{{ list }}" wx:key="index" class="tabbarItem"> |
|||
<image |
|||
slot="icon" |
|||
src="{{ item.blur }}" |
|||
mode="aspectFit" |
|||
class="tabbarIcon" |
|||
/> |
|||
<image |
|||
slot="icon-active" |
|||
src="{{ item.focus }}" |
|||
mode="aspectFit" |
|||
class="tabbarIcon" |
|||
/> |
|||
{{ item.text }} |
|||
</van-tabbar-item> |
|||
</van-tabbar> |
|||
@ -0,0 +1,9 @@ |
|||
.myTabbar .tabbarItem { |
|||
background-color: #fff; |
|||
border-top: 1px solid #eee; |
|||
} |
|||
|
|||
.tabbarIcon { |
|||
width: 47rpx; |
|||
height: 49rpx; |
|||
} |
|||
@ -0,0 +1,16 @@ |
|||
{ |
|||
"requires": true, |
|||
"lockfileVersion": 1, |
|||
"dependencies": { |
|||
"@vant/area-data": { |
|||
"version": "1.2.3", |
|||
"resolved": "https://registry.npmmirror.com/@vant/area-data/-/area-data-1.2.3.tgz", |
|||
"integrity": "sha512-9bDgEsFnTjdaYXPvsYKRQmxzKDdLCl0c1dOo4JGE6RhaIcq2kR2f5cK0LUdGK+U/SuBz9NfW5ejL1lejcFiP1Q==" |
|||
}, |
|||
"@vant/weapp": { |
|||
"version": "1.10.2", |
|||
"resolved": "https://registry.npmmirror.com/@vant/weapp/-/weapp-1.10.2.tgz", |
|||
"integrity": "sha512-caqA0xQxM4lMRncFsRPPVMDdEzUBCJ4xdFXuKReXpEU3qwnVIP/WIjVDIi7mWyS7xqz8C9WfSW5JL4PrlSq31w==" |
|||
} |
|||
} |
|||
} |
|||
@ -0,0 +1,6 @@ |
|||
{ |
|||
"dependencies": { |
|||
"@vant/area-data": "^1.2.3", |
|||
"@vant/weapp": "^1.10.2" |
|||
} |
|||
} |
|||
@ -0,0 +1,145 @@ |
|||
// pages/signIn/signIn.js
|
|||
var app = getApp() |
|||
import { getAbout } from "../../api/home" |
|||
let that |
|||
|
|||
|
|||
Page({ |
|||
|
|||
data: { |
|||
activeKey: 0, |
|||
latitude: 31.462191, //纬度
|
|||
longitude: 104.75028, //经度
|
|||
markers: [{ |
|||
id: 1, |
|||
width: 22, //标记宽
|
|||
height: 43, //标记高
|
|||
latitude: 31.462191, |
|||
longitude: 104.75028, |
|||
address:'', |
|||
tel:'', |
|||
phone:'', |
|||
userPhone:'', |
|||
}] |
|||
}, |
|||
|
|||
biaoji(e) { |
|||
console.log("标记目的地点击", that.data.latitude) |
|||
wx.getLocation({//获取当前地址信息
|
|||
type: 'wgs84', |
|||
success(res) { |
|||
const latitude = res.latitude |
|||
const longitude = res.longitude |
|||
const speed = res.speed |
|||
const accuracy = res.accuracy |
|||
wx.openLocation({//跳转腾讯地图查看并可以进行导航
|
|||
latitude: that.data.latitude, |
|||
longitude: that.data.longitude |
|||
}) |
|||
},fail(res){//未授权地理位置处理
|
|||
wx.showModal({ |
|||
title: '请授权', |
|||
content: '若未授权地理位置,您将不能正常使用导航功能', |
|||
confirmText:"授权", |
|||
success (res) { |
|||
if (res.confirm) { |
|||
console.log('用户点击确定') |
|||
wx.openSetting({//跳转设置授权界面
|
|||
}) |
|||
} else if (res.cancel) { |
|||
console.log('用户点击取消') |
|||
} |
|||
} |
|||
}) |
|||
} |
|||
}) |
|||
}, |
|||
|
|||
callPhone (e) { |
|||
console.log(e.currentTarget.dataset.phone) |
|||
let mobile = e.currentTarget.dataset.phone; //获取data-phone的手机号
|
|||
wx.makePhoneCall({ |
|||
phoneNumber: mobile |
|||
}) |
|||
}, |
|||
|
|||
getAboutDetails() { |
|||
getAbout({}).then(res => { |
|||
console.log(res.data.map.split(',')[1]) |
|||
that.setData({ |
|||
address: res.data.address, |
|||
tel:res.data.tel, |
|||
phone:res.data.phone, |
|||
longitude:res.data.map.split(',')[0], |
|||
latitude:res.data.map.split(',')[1], |
|||
markers: [{ |
|||
longitude:res.data.map.split(',')[0], |
|||
latitude:res.data.map.split(',')[1], |
|||
}], |
|||
userPhone: res.data.contact_phone |
|||
}) |
|||
|
|||
|
|||
|
|||
}) |
|||
}, |
|||
|
|||
|
|||
|
|||
/** |
|||
* 生命周期函数--监听页面加载 |
|||
*/ |
|||
onLoad(options) { |
|||
that = this |
|||
}, |
|||
|
|||
/** |
|||
* 生命周期函数--监听页面初次渲染完成 |
|||
*/ |
|||
onReady() { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 生命周期函数--监听页面显示 |
|||
*/ |
|||
onShow() { |
|||
that.getTabBar().init(); |
|||
that.getAboutDetails() |
|||
}, |
|||
|
|||
/** |
|||
* 生命周期函数--监听页面隐藏 |
|||
*/ |
|||
onHide() { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 生命周期函数--监听页面卸载 |
|||
*/ |
|||
onUnload() { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 页面相关事件处理函数--监听用户下拉动作 |
|||
*/ |
|||
onPullDownRefresh() { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 页面上拉触底事件的处理函数 |
|||
*/ |
|||
onReachBottom() { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 用户点击右上角分享 |
|||
*/ |
|||
onShareAppMessage() { |
|||
|
|||
} |
|||
}) |
|||
@ -0,0 +1,8 @@ |
|||
{ |
|||
"navigationBarTitleText": "联系我们", |
|||
"usingComponents": { |
|||
"van-icon": "@vant/weapp/icon/index" |
|||
|
|||
} |
|||
|
|||
} |
|||
@ -0,0 +1,24 @@ |
|||
<!--pages/signIn/signIn.wxml--> |
|||
|
|||
<view class="container"> |
|||
<view class="contact_info"> |
|||
<van-icon style="position: relative; top: -45rpx;" name="location" color="white" /> |
|||
<text>公司地址:{{address}}</text> |
|||
</view> |
|||
<view class="contact_info"> |
|||
<van-icon name="phone" color="white" /> |
|||
<text>公司电话:{{tel}}</text> |
|||
</view> |
|||
<view class="contact_info" style="margin-top: 6rpx;"> |
|||
<van-icon name="manager" color="white" /> |
|||
<text style="float: right; margin-top: 0rpx;" decode="true">{{phone}}</text> |
|||
</view> |
|||
|
|||
<map class="map" bindmarkertap="biaoji" data-mark="{{markers[0]}}" latitude="{{latitude}}" longitude="{{longitude}}" markers="{{markers}}" scale="17"></map> |
|||
<view class="telPhone" bindtap="callPhone" data-phone="{{userPhone}}"> |
|||
<image src='../../assets/imgs/phone.png' /> |
|||
</view> |
|||
|
|||
|
|||
|
|||
</view> |
|||
@ -0,0 +1,49 @@ |
|||
/* pages/signIn/signIn.wxss */ |
|||
.container { |
|||
width: 100%; |
|||
min-height: 100vh; |
|||
background: #fff; |
|||
padding-top: 30rpx; |
|||
} |
|||
.van-icon { |
|||
float: left; |
|||
width: 48rpx; |
|||
height: 48rpx; |
|||
background: #666; |
|||
border-radius: 50%; |
|||
margin: 0 26rpx 0 0; |
|||
} |
|||
.van-icon:before { |
|||
display: block; |
|||
text-align: center; |
|||
line-height: 48rpx; |
|||
} |
|||
.contact_info { |
|||
|
|||
padding: 25rpx 45rpx 0; |
|||
font-size: 26rpx; |
|||
color: #333; |
|||
clear: both; |
|||
} |
|||
.contact_info text { |
|||
line-height: 48rpx; |
|||
display: inline-block; |
|||
width: 580rpx; |
|||
} |
|||
map { |
|||
width: 100%; |
|||
height: 641rpx; |
|||
margin-top: 80rpx; |
|||
} |
|||
.van-icon { |
|||
text-align: center; |
|||
} |
|||
.telPhone { |
|||
position: fixed; |
|||
right: 10px; |
|||
top: 70%; |
|||
} |
|||
.telPhone image { |
|||
width: 110rpx; |
|||
height: 110rpx; |
|||
} |
|||
@ -0,0 +1,177 @@ |
|||
// pages/home/home.js
|
|||
var app = getApp() |
|||
var WxParse = require('../../wxParse/wxParse.js'); |
|||
import { getDetailProduct } from "../../api/home" |
|||
import { getAbout } from "../../api/home" |
|||
|
|||
let that |
|||
Page({ |
|||
|
|||
/** |
|||
* 页面的初始数据 |
|||
*/ |
|||
data: { |
|||
|
|||
fileList: [ |
|||
{ |
|||
url: '', |
|||
deletable: false, |
|||
}, |
|||
], |
|||
id:10, |
|||
detailsList:[], |
|||
userPhone:'', |
|||
article:'', |
|||
title:'', |
|||
source:'', |
|||
|
|||
}, |
|||
|
|||
// // 跳转发布
|
|||
// openPub() {
|
|||
// wx.switchTab({
|
|||
// url: '/pages/publish/publish',
|
|||
// })
|
|||
// },
|
|||
|
|||
getAboutDetails() { |
|||
getAbout({}).then(res => { |
|||
that.setData({ |
|||
userPhone: res.data.contact_phone , |
|||
}) |
|||
|
|||
}) |
|||
}, |
|||
// 获取产品详情
|
|||
getProductDetails() { |
|||
getDetailProduct({ |
|||
id:that.data.id, |
|||
}).then(res => { |
|||
|
|||
that.setData({ |
|||
detailsList: res.data.postion, |
|||
title:res.data.detail.title, |
|||
source:res.data.detail.source, |
|||
fileList:[{ |
|||
url:res.data.detail.image |
|||
}], |
|||
|
|||
|
|||
article: WxParse.wxParse('article', 'html', res.data.detail.content, that, 5) |
|||
}) |
|||
console.log(that.data.detailsList) |
|||
}) |
|||
|
|||
}, |
|||
|
|||
callPhone (e) { |
|||
console.log(e.currentTarget.dataset.phone) |
|||
let mobile = e.currentTarget.dataset.phone; //获取data-phone的手机号
|
|||
wx.makePhoneCall({ |
|||
phoneNumber: mobile |
|||
}) |
|||
}, |
|||
|
|||
|
|||
|
|||
/** |
|||
* 生命周期函数--监听页面加载 |
|||
*/ |
|||
onLoad: function (options) { |
|||
that = this |
|||
wx.setNavigationBarTitle({ |
|||
title: '首页', |
|||
}) |
|||
// console.log(options.id) //options.参数名就可以取到
|
|||
that.setData({ |
|||
id: options.id |
|||
}) |
|||
// var article = `< !DOCTYPE HTML >`+that.data.content;
|
|||
// WxParse.wxParse('article', 'html', that.data.content, that, 5);
|
|||
}, |
|||
|
|||
/** |
|||
* 生命周期函数--监听页面初次渲染完成 |
|||
*/ |
|||
onReady: function () { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 生命周期函数--监听页面显示 |
|||
*/ |
|||
onShow: function () { |
|||
// that.getTabBar().init();
|
|||
|
|||
that.getProductDetails() |
|||
that.getAboutDetails() |
|||
/* that.getList({ |
|||
page: that.data.page, |
|||
limit: that.data.limit |
|||
}) |
|||
|
|||
that.getTypeList() |
|||
that.setData({ |
|||
minDate: new Date(new Date().getFullYear(), new Date().getMonth(), 1).getTime(), |
|||
maxDate: new Date(new Date().getFullYear(), new Date().getMonth() + 1, 0).getTime(), |
|||
today: new Date(new Date().getFullYear(), new Date().getMonth(), new Date().getDate()).getTime() |
|||
}) */ |
|||
}, |
|||
|
|||
/** |
|||
* 生命周期函数--监听页面隐藏 |
|||
*/ |
|||
onHide: function () { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 生命周期函数--监听页面卸载 |
|||
*/ |
|||
onUnload: function () { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 页面相关事件处理函数--监听用户下拉动作 |
|||
*/ |
|||
onPullDownRefresh: function () { |
|||
// console.log("下拉刷新")
|
|||
// that.setData({
|
|||
// page: 1, // 每次触发下拉事件page=1
|
|||
// })
|
|||
// that.getList({
|
|||
// page: 1,
|
|||
// limit: that.data.limit,
|
|||
// adCode: that.data.address ? that.data.address[1].code : '',
|
|||
// labelId: that.data.curCate
|
|||
// })
|
|||
}, |
|||
|
|||
/** |
|||
* 页面上拉触底事件的处理函数 |
|||
*/ |
|||
onReachBottom: function () { |
|||
// console.log("上拉加载")
|
|||
// if(that.data.list.length < that.data.total) {
|
|||
// that.setData({
|
|||
// page: that.data.page + 1
|
|||
// })
|
|||
// that.getList({
|
|||
// page: that.data.page,
|
|||
// limit: that.data.limit,
|
|||
// adCode: that.data.address ? that.data.address[1].code : '',
|
|||
// labelId: value.detail ? value.detail : ''
|
|||
// })
|
|||
// }else {
|
|||
// Toast('没有更多数据了')
|
|||
// }
|
|||
}, |
|||
|
|||
/** |
|||
* 用户点击右上角分享 |
|||
*/ |
|||
onShareAppMessage: function () { |
|||
|
|||
} |
|||
}) |
|||
@ -0,0 +1,11 @@ |
|||
{ |
|||
"usingComponents": { |
|||
"van-uploader": "@vant/weapp/uploader/index", |
|||
"van-row": "@vant/weapp/row/index", |
|||
"van-col": "@vant/weapp/col/index", |
|||
"van-icon": "@vant/weapp/icon/index", |
|||
"van-share-sheet": "@vant/weapp/share-sheet/index" |
|||
}, |
|||
"navigationBarTitleText": "详情页" |
|||
|
|||
} |
|||
@ -0,0 +1,60 @@ |
|||
<!--pages/home/home.wxml--> |
|||
<import src="../../wxParse/wxParse.wxml"/> |
|||
<view class="container"> |
|||
<view class="banner"> |
|||
<van-uploader file-list="{{ fileList }}" max-count="1" /> |
|||
<view class="details_text"> |
|||
<text class="text_title">{{title}}</text> |
|||
<view class="text_info">所属片场:{{source}}</view> |
|||
<view class="text_con"> |
|||
<view class="wxParse"> |
|||
<template is="wxParse" data="{{wxParseData:article.nodes}}"/> |
|||
</view> |
|||
<!-- <text>影棚总面积达2000㎡,层高20m,可自由分割组合,包含汽车棚、无影棚、数字棚、多功能拍摄棚等,汽车棚内配备了直径6m的专业电动转盘,能轻松实现汽车或大部分产品的360度拍摄,或作为线下活动的旋转展台使用。棚内不仅可以满足目前市场上包括平面/视频在内的所有种类的广告拍摄需求,亦可作为举办大型商业活动的场地。</text> |
|||
<image src="../../assets/imgs/img3.png" /> |
|||
<image src="../../assets/imgs/img3.png" /> |
|||
<image src="../../assets/imgs/img3.png" /> |
|||
<image src="../../assets/imgs/img3.png" /> --> |
|||
</view> |
|||
|
|||
<view class="main_con"> |
|||
<view class="main_title"> |
|||
<text>相关片场</text> |
|||
</view> |
|||
<van-row gutter="12"> |
|||
<van-col span="12" wx:for="{{detailsList}}" wx:key="index"> |
|||
<navigator url= '../details/details?id={{item.id}}'> |
|||
<image src="{{item.image}}" /> |
|||
<text>{{item.title}}</text> |
|||
</navigator> |
|||
</van-col> |
|||
|
|||
</van-row> |
|||
</view> |
|||
|
|||
</view> |
|||
<view class="footer_share"> |
|||
<van-row> |
|||
<van-col span="8"> |
|||
|
|||
<button class='fenxiang' open-type="share"> |
|||
<van-icon name="share-o" size="20" color="#333" /> 分享 |
|||
</button> |
|||
</van-col> |
|||
<van-col span="8"> |
|||
<button open-type="contact" bindcontact="handleContact"><van-icon name="chat-o" size="20" color="#333" />在线咨询</button> |
|||
<!-- <van-icon name="chat-o" size="20" color="#3B2121" /> 在线咨询 --> |
|||
</van-col> |
|||
<van-col span="8" bindtap="callPhone" data-phone="{{userPhone}}"> |
|||
<button><van-icon name="phone" size="20" color="#333" /> 联系我们</button> |
|||
</van-col> |
|||
</van-row> |
|||
<van-share-sheet |
|||
show="{{ showShare }}" |
|||
title="立即分享给好友" |
|||
options="{{ shareOptions }}" |
|||
bind:close="closeShare" |
|||
/> |
|||
</view> |
|||
</view> |
|||
</view> |
|||
@ -0,0 +1,92 @@ |
|||
/* pages/home/home.wxss */ |
|||
|
|||
.container { |
|||
min-height: 100vh; |
|||
} |
|||
|
|||
.banner image.van-uploader__preview-image{ |
|||
width: 750rpx !important; |
|||
height: 650rpx !important; |
|||
} |
|||
.van-uploader__preview { |
|||
margin: 0 !important; |
|||
} |
|||
.details_text { |
|||
background: #fff; |
|||
color: #333; |
|||
font-size: 30rpx; |
|||
padding: 55rpx 45rpx 140rpx; |
|||
margin-top: -40rpx; |
|||
border-top-left-radius: 30rpx; |
|||
border-top-right-radius: 30rpx; |
|||
position: relative; |
|||
line-height: 50rpx; |
|||
} |
|||
.details_text .text_title { |
|||
font-size: 38rpx; |
|||
} |
|||
.details_text .text_info { |
|||
margin: 35rpx 0 55rpx; |
|||
font-size: 24rpx; |
|||
color: #666; |
|||
|
|||
} |
|||
.details_text image { |
|||
width: 661rpx; |
|||
height: 360rpx; |
|||
border-radius: 8rpx; |
|||
margin-top: 30rpx; |
|||
} |
|||
|
|||
.main_title { |
|||
padding-top: 20rpx; |
|||
font-size: 28rpx; |
|||
color: #333; |
|||
} |
|||
.main_title text { |
|||
display: block; |
|||
font-size: 38rpx !important; |
|||
} |
|||
.main_con image { |
|||
width: 320rpx; |
|||
height: 200rpx; |
|||
border-radius: 16rpx; |
|||
margin-top: 26rpx; |
|||
} |
|||
.main_con text { |
|||
display: block; |
|||
font-size: 28rpx; |
|||
color: #333; |
|||
} |
|||
.footer_share { |
|||
position: fixed; |
|||
bottom: 0; |
|||
background: #fff; |
|||
width: 100%; |
|||
height: 50rpx; |
|||
line-height: 50rpx; |
|||
padding: 34rpx 0; |
|||
text-align: center; |
|||
border-top: 1px solid #eee; |
|||
font-size: 32rpx; |
|||
} |
|||
.van-col--8 { |
|||
height: 50rpx; |
|||
border-right: 1px solid #eee; |
|||
} |
|||
.van-icon { |
|||
position: relative; |
|||
top: 2px; |
|||
} |
|||
button::after { |
|||
padding: 0 !important; |
|||
margin: 0 !important; |
|||
border: none !important; |
|||
background-color: none !important; |
|||
font-size: 32rpx !important; |
|||
} |
|||
button{ |
|||
font-size: 32rpx !important; |
|||
background: none; |
|||
margin-top: -18rpx |
|||
} |
|||
@ -0,0 +1,155 @@ |
|||
// pages/home/home.js
|
|||
var app = getApp() |
|||
import { getHome } from "../../api/home" |
|||
let that |
|||
Page({ |
|||
|
|||
/** |
|||
* 页面的初始数据 |
|||
*/ |
|||
data: { |
|||
|
|||
bannerList: [], |
|||
yspList:[], |
|||
sjpcList:[], |
|||
ptssList:[], |
|||
kpxsList:[], |
|||
moreId:'', |
|||
|
|||
|
|||
}, |
|||
|
|||
|
|||
// 获取首页数据
|
|||
getHomeList() { |
|||
getHome({}).then(res => { |
|||
console.log(res) |
|||
if(res.code ==1) { |
|||
console.log(res.data.ad) |
|||
that.setData({ |
|||
bannerList: res.data.ad, |
|||
yspList:res.data.yinshidapeng, |
|||
sjpcList:res.data.shijingpianchang, |
|||
ptssList:res.data.peitaosheshi, |
|||
kpxsList:res.data.kepianxinshang, |
|||
}) |
|||
} |
|||
}) |
|||
}, |
|||
|
|||
|
|||
moretap(e){ |
|||
// const id = e.currentTarget.dataset.id
|
|||
|
|||
that.setData({ |
|||
moreId:e.currentTarget.dataset.id |
|||
}) |
|||
app.globalData.id = that.data.moreId |
|||
|
|||
wx.switchTab({ |
|||
url: '/pages/setDisplay/setDisplay' |
|||
}) |
|||
|
|||
}, |
|||
contactUs(e){ |
|||
wx.switchTab({ |
|||
url: '/pages/contactUs/contactUs' |
|||
}) |
|||
}, |
|||
|
|||
|
|||
/** |
|||
* 生命周期函数--监听页面加载 |
|||
*/ |
|||
onLoad: function (options) { |
|||
that = this |
|||
wx.setNavigationBarTitle({ |
|||
title: '首页', |
|||
}) |
|||
}, |
|||
|
|||
/** |
|||
* 生命周期函数--监听页面初次渲染完成 |
|||
*/ |
|||
onReady: function () { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 生命周期函数--监听页面显示 |
|||
*/ |
|||
onShow: function () { |
|||
|
|||
that.getTabBar().init(); |
|||
that.getHomeList() |
|||
|
|||
/* that.getList({ |
|||
page: that.data.page, |
|||
limit: that.data.limit |
|||
}) |
|||
that.getBannerList() |
|||
that.getTypeList() |
|||
that.setData({ |
|||
minDate: new Date(new Date().getFullYear(), new Date().getMonth(), 1).getTime(), |
|||
maxDate: new Date(new Date().getFullYear(), new Date().getMonth() + 1, 0).getTime(), |
|||
today: new Date(new Date().getFullYear(), new Date().getMonth(), new Date().getDate()).getTime() |
|||
}) */ |
|||
}, |
|||
|
|||
/** |
|||
* 生命周期函数--监听页面隐藏 |
|||
*/ |
|||
onHide: function () { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 生命周期函数--监听页面卸载 |
|||
*/ |
|||
onUnload: function () { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 页面相关事件处理函数--监听用户下拉动作 |
|||
*/ |
|||
onPullDownRefresh: function () { |
|||
// console.log("下拉刷新")
|
|||
// that.setData({
|
|||
// page: 1, // 每次触发下拉事件page=1
|
|||
// })
|
|||
// that.getList({
|
|||
// page: 1,
|
|||
// limit: that.data.limit,
|
|||
// adCode: that.data.address ? that.data.address[1].code : '',
|
|||
// labelId: that.data.curCate
|
|||
// })
|
|||
}, |
|||
|
|||
/** |
|||
* 页面上拉触底事件的处理函数 |
|||
*/ |
|||
onReachBottom: function () { |
|||
// console.log("上拉加载")
|
|||
// if(that.data.list.length < that.data.total) {
|
|||
// that.setData({
|
|||
// page: that.data.page + 1
|
|||
// })
|
|||
// that.getList({
|
|||
// page: that.data.page,
|
|||
// limit: that.data.limit,
|
|||
// adCode: that.data.address ? that.data.address[1].code : '',
|
|||
// labelId: value.detail ? value.detail : ''
|
|||
// })
|
|||
// }else {
|
|||
// Toast('没有更多数据了')
|
|||
// }
|
|||
}, |
|||
|
|||
/** |
|||
* 用户点击右上角分享 |
|||
*/ |
|||
onShareAppMessage: function () { |
|||
|
|||
} |
|||
}) |
|||
@ -0,0 +1,11 @@ |
|||
{ |
|||
"usingComponents": { |
|||
"van-icon": "@vant/weapp/icon/index", |
|||
"van-share-sheet": "@vant/weapp/share-sheet/index", |
|||
"van-image": "@vant/weapp/image/index", |
|||
"van-row": "@vant/weapp/row/index", |
|||
"van-col": "@vant/weapp/col/index" |
|||
}, |
|||
"enablePullDownRefresh": true, |
|||
"navigationStyle":"custom" |
|||
} |
|||
@ -0,0 +1,106 @@ |
|||
<!--pages/home/home.wxml--> |
|||
<view class="container"> |
|||
<view class="banner"> |
|||
<swiper indicator-dots="{{ true }}" autoplay="{{ false }}" interval="{{ 2000 }}" duration="{{ 500 }}" indicator-color="rgba(255,255,255,.4)" indicator-active-color="rgba(255,255,255,1)"> |
|||
|
|||
<block wx:for="{{bannerList}}" wx:key="index" catchtap='navmap'> |
|||
<swiper-item> |
|||
<view class="item"> |
|||
<van-image width="100%" height="100%" fit="cover" use-error-slot catchtap='navmap' src="{{ item.image }}"> |
|||
<text slot="error">加载失败</text> |
|||
</van-image> |
|||
</view> |
|||
</swiper-item> |
|||
</block> |
|||
</swiper> |
|||
</view> |
|||
|
|||
<view class="core"> |
|||
<van-row> |
|||
<van-col span="6" data-id='0' bindtap="moretap"> |
|||
<image src="../../assets/imgs/icon1.png" /> |
|||
<text>影视大棚</text> |
|||
</van-col> |
|||
<van-col span="6" data-id='1' bindtap="moretap"> |
|||
<image src="../../assets/imgs/icon2.png" /> |
|||
<text>实景片场</text> |
|||
</van-col> |
|||
<van-col span="6" data-id='2' bindtap="moretap"> |
|||
<image src="../../assets/imgs/icon3.png" /> |
|||
<text>配套设施</text> |
|||
</van-col> |
|||
<van-col span="6" bindtap="contactUs"> |
|||
<image src="../../assets/imgs/icon4.png" /> |
|||
<text>联系我们</text> |
|||
</van-col> |
|||
</van-row> |
|||
</view> |
|||
|
|||
<view class="category"> |
|||
<view class="main_con"> |
|||
<view class="main_title" bindtap="ysptabbar"> |
|||
<text>影视大棚</text><view class="more" data-id='0' bindtap="moretap">全部 <van-icon name="arrow" color="#333" /></view> |
|||
</view> |
|||
<van-row gutter="12"> |
|||
<van-col span="12" wx:for="{{yspList}}" wx:key="index"> |
|||
<navigator url= '../details/details?id={{item.id}}'> |
|||
<image src="{{item.image}}" /> |
|||
<text>{{item.title}}</text> |
|||
</navigator> |
|||
</van-col> |
|||
|
|||
</van-row> |
|||
</view> |
|||
|
|||
<view class="main_con"> |
|||
<view class="main_title"> |
|||
<text>实景片场</text><view class="more" data-id='1' bindtap="moretap">全部 <van-icon name="arrow" color="#333" /></view> |
|||
</view> |
|||
<van-row gutter="12"> |
|||
<van-col span="12" wx:for="{{sjpcList}}" wx:key="index"> |
|||
<navigator url= '../details/details?id={{item.id}}'> |
|||
<image src="{{item.image}}" /> |
|||
<text>{{item.title}}</text> |
|||
</navigator> |
|||
</van-col> |
|||
</van-row> |
|||
</view> |
|||
|
|||
<view class="main_con ptss_con"> |
|||
<view class="main_title"> |
|||
<text>配套设施</text><view class="more" data-id='2' bindtap="moretap">全部 <van-icon name="arrow" color="#333" /></view> |
|||
</view> |
|||
<van-row gutter="12"> |
|||
<van-col span="12" wx:for="{{ptssList}}" wx:key="index"> |
|||
<navigator url= '../details/details?id={{item.id}}'> |
|||
<image src="{{item.image}}" /> |
|||
<view class="mask"></view> |
|||
<text>{{item.title}}</text> |
|||
</navigator> |
|||
</van-col> |
|||
</van-row> |
|||
</view> |
|||
|
|||
<view class="main_con ptss_con"> |
|||
<view class="main_title"> |
|||
<text>客片欣赏</text><view class="more" data-id='3' bindtap="moretap">全部 <van-icon name="arrow" color="#333" /></view> |
|||
</view> |
|||
<van-row gutter="12"> |
|||
<van-col span="12" wx:for="{{kpxsList}}" wx:key="index"> |
|||
<navigator url= '../details/details?id={{item.id}}'> |
|||
<image src="{{item.image}}" /> |
|||
<view class="mask"></view> |
|||
<text>{{item.title}}</text> |
|||
</navigator> |
|||
</van-col> |
|||
</van-row> |
|||
</view> |
|||
|
|||
</view> |
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
</view> |
|||
@ -0,0 +1,110 @@ |
|||
/* pages/home/home.wxss */ |
|||
.container { |
|||
min-height: 100vh; |
|||
} |
|||
|
|||
.banner swiper { |
|||
height: 634rpx; |
|||
} |
|||
.banner .item { |
|||
width: 750rpx; |
|||
height: 634rpx; |
|||
} |
|||
|
|||
.banner .item image { |
|||
width: 100%; |
|||
height: 100%; |
|||
} |
|||
|
|||
.core { |
|||
background-color: #fff; |
|||
padding: 40rpx 0 20rpx; |
|||
border-top-left-radius: 30rpx; |
|||
border-top-right-radius: 30rpx; |
|||
position: relative; |
|||
top: -25rpx; |
|||
} |
|||
.core image { |
|||
display: block; |
|||
width: 94rpx; |
|||
height: 80rpx; |
|||
margin: 0 auto; |
|||
} |
|||
|
|||
.core text { |
|||
display: block; |
|||
width: 100%; |
|||
text-align: center; |
|||
color: #333; |
|||
font-size: 30rpx; |
|||
margin-top: 25rpx; |
|||
} |
|||
|
|||
.category { |
|||
background-color: #fff; |
|||
padding: 0 45rpx 150rpx; |
|||
} |
|||
.main_title { |
|||
padding-top: 30rpx; |
|||
font-size: 28rpx; |
|||
color: #333; |
|||
display: flex; |
|||
justify-content: space-between; |
|||
} |
|||
.main_title text { |
|||
display: block; |
|||
font-size: 38rpx !important; |
|||
} |
|||
.main_title .more { |
|||
font-size: 30rpx !important; |
|||
line-height: 50rpx; |
|||
} |
|||
.main_con image { |
|||
width: 320rpx; |
|||
height: 200rpx; |
|||
border-radius: 16rpx; |
|||
margin-top: 26rpx; |
|||
} |
|||
.main_con text { |
|||
font-size: 28rpx; |
|||
color: #333 |
|||
} |
|||
.main_con.ptss_con .van-col { |
|||
position: relative; |
|||
} |
|||
.main_con.ptss_con image { |
|||
height: 280rpx !important; |
|||
} |
|||
.main_con.ptss_con .van-col .mask { |
|||
position: absolute; |
|||
top: 26rpx; |
|||
right: 6px; |
|||
width: 320rpx; |
|||
height: 280rpx; |
|||
border-radius: 16rpx; |
|||
background: #000; |
|||
opacity: .28; |
|||
} |
|||
.main_con.ptss_con .van-col text { |
|||
display: block; |
|||
width: 100%; |
|||
position: absolute; |
|||
top: 50%; |
|||
left: 0; |
|||
text-align: center; |
|||
color: #fff; |
|||
} |
|||
|
|||
.wx-swiper-dots { |
|||
position: relative; |
|||
/* unset复原重置属性值 */ |
|||
left: 0; |
|||
right: 0; |
|||
|
|||
top:560rpx |
|||
} |
|||
|
|||
.wx-swiper-dots .wx-swiper-dots-horizontal { |
|||
margin-bottom: 100rpx; |
|||
} |
|||
|
|||
@ -0,0 +1,18 @@ |
|||
// logs.js
|
|||
const util = require('../../utils/util.js') |
|||
|
|||
Page({ |
|||
data: { |
|||
logs: [] |
|||
}, |
|||
onLoad() { |
|||
this.setData({ |
|||
logs: (wx.getStorageSync('logs') || []).map(log => { |
|||
return { |
|||
date: util.formatTime(new Date(log)), |
|||
timeStamp: log |
|||
} |
|||
}) |
|||
}) |
|||
} |
|||
}) |
|||
@ -0,0 +1,4 @@ |
|||
{ |
|||
"navigationBarTitleText": "查看启动日志", |
|||
"usingComponents": {} |
|||
} |
|||
@ -0,0 +1,6 @@ |
|||
<!--logs.wxml--> |
|||
<view class="container log-list"> |
|||
<block wx:for="{{logs}}" wx:key="timeStamp" wx:for-item="log"> |
|||
<text class="log-item">{{index + 1}}. {{log.date}}</text> |
|||
</block> |
|||
</view> |
|||
@ -0,0 +1,8 @@ |
|||
.log-list { |
|||
display: flex; |
|||
flex-direction: column; |
|||
padding: 40rpx; |
|||
} |
|||
.log-item { |
|||
margin: 10rpx; |
|||
} |
|||
@ -0,0 +1,175 @@ |
|||
// pages/signIn/signIn.js
|
|||
var app = getApp() |
|||
import { getDisplay,getDisplayProduct } from "../../api/home" |
|||
let that |
|||
|
|||
Page({ |
|||
data: { |
|||
activeKey: 0, |
|||
displayList:[], |
|||
displayProductList:[], |
|||
cateId:10, |
|||
page:1, |
|||
limit:10 |
|||
}, |
|||
getDisplayList() { |
|||
|
|||
getDisplay({}).then(res => { |
|||
if(res.code ==1) { |
|||
that.setData({ |
|||
displayList: res.data |
|||
}) |
|||
console.log(that.data.activeKey) |
|||
that.getDisplayProductList({ |
|||
cate_id:that.data.displayList[that.data.activeKey].id, |
|||
page:that.data.page, |
|||
limit:that.data.limit |
|||
}) |
|||
|
|||
|
|||
} |
|||
}) |
|||
|
|||
|
|||
}, |
|||
|
|||
//触底响应函数
|
|||
onBottom(){ |
|||
if(that.data.displayProductList.length==that.data.limit*that.data.page){ |
|||
(that.data.page)++; |
|||
that.getDisplayProductList({ |
|||
cate_id:that.data.displayList[that.data.activeKey].id, |
|||
page:that.data.page, |
|||
limit:that.data.limit |
|||
}) |
|||
} |
|||
|
|||
}, |
|||
|
|||
|
|||
|
|||
//获取列表失败的回调函数
|
|||
getListFail(err){ |
|||
wx.showToast({ |
|||
title: '获取失败,请稍后重试', |
|||
icon:'none', |
|||
duration:2500, |
|||
}) |
|||
}, |
|||
|
|||
|
|||
|
|||
getDisplayProductList(query){ |
|||
getDisplayProduct(query).then(res => { |
|||
if(res.code ==1) { |
|||
if (that.data.page == 1) { |
|||
that.setData({ |
|||
displayProductList: res.data, |
|||
}) |
|||
} else { |
|||
|
|||
//获取原始列表
|
|||
let displayProductList = that.data.displayProductList; |
|||
//获取新列表
|
|||
let arr = res.data; |
|||
//新列表数据与原列表数据合并
|
|||
let newArr = displayProductList.concat(arr); |
|||
that.setData({ |
|||
displayProductList: newArr, |
|||
}) |
|||
} |
|||
} |
|||
}) |
|||
}, |
|||
|
|||
onChange(event) { |
|||
that.setData({ |
|||
activeKey:event.detail, |
|||
page:1 |
|||
}) |
|||
that.getDisplayProductList({ |
|||
cate_id:that.data.displayList[event.detail].id, |
|||
page:that.data.page, |
|||
limit:that.data.limit |
|||
}) |
|||
}, |
|||
|
|||
|
|||
|
|||
/** |
|||
* 生命周期函数--监听页面加载 |
|||
*/ |
|||
onLoad(options) { |
|||
that = this |
|||
|
|||
|
|||
|
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 生命周期函数--监听页面初次渲染完成 |
|||
*/ |
|||
onReady() { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 生命周期函数--监听页面显示 |
|||
*/ |
|||
onShow() { |
|||
|
|||
if(app.globalData.id=='undefined'||app.globalData.id==null||app.globalData.id==''){ |
|||
|
|||
that.setData({ |
|||
activeKey:0 |
|||
}) |
|||
}else{ |
|||
that.setData({ |
|||
activeKey:app.globalData.id |
|||
}) |
|||
} |
|||
|
|||
|
|||
that.getTabBar().init(); |
|||
that.getDisplayList(); |
|||
|
|||
|
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 生命周期函数--监听页面隐藏 |
|||
*/ |
|||
onHide() { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 生命周期函数--监听页面卸载 |
|||
*/ |
|||
onUnload() { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 页面相关事件处理函数--监听用户下拉动作 |
|||
*/ |
|||
onPullDownRefresh() { |
|||
|
|||
}, |
|||
|
|||
/** |
|||
* 页面上拉触底事件的处理函数 |
|||
*/ |
|||
onReachBottom() { |
|||
this.onBottom(); |
|||
}, |
|||
|
|||
/** |
|||
* 用户点击右上角分享 |
|||
*/ |
|||
onShareAppMessage() { |
|||
|
|||
} |
|||
}) |
|||
@ -0,0 +1,11 @@ |
|||
{ |
|||
"navigationBarTitleText": "片场展示", |
|||
"usingComponents": { |
|||
"van-sidebar": "@vant/weapp/sidebar/index", |
|||
"van-sidebar-item": "@vant/weapp/sidebar-item/index", |
|||
"van-notify": "@vant/weapp/notify/index", |
|||
"van-divider": "@vant/weapp/divider/index" |
|||
}, |
|||
"enablePullDownRefresh": true, |
|||
"onReachBottomDistance":100 |
|||
} |
|||
@ -0,0 +1,21 @@ |
|||
<!--pages/signIn/signIn.wxml--> |
|||
<view class="container"> |
|||
<van-sidebar class="left_side" active-key="{{ activeKey }}" bind:change="onChange"> |
|||
<van-sidebar-item wx:for="{{displayList}}" wx:key="index" title="{{item.cate_name}}" /> |
|||
<!-- <van-sidebar-item title="实景片场" /> |
|||
<van-sidebar-item title="配套设施" /> --> |
|||
</van-sidebar> |
|||
|
|||
<view class="right_con"> |
|||
<block wx:for="{{displayProductList}}" wx:key="index"> |
|||
<navigator url='../details/details?id={{item.id}}'> |
|||
<van-divider contentPosition="center" customStyle="color: #372222; width:70%; border-color: #372222; font-size: 15px; margin:20px auto 10px;"> |
|||
<text style="text-align: center;">{{item.title}}</text> |
|||
</van-divider> |
|||
<image src="{{item.image}}"></image> |
|||
</navigator> |
|||
</block> |
|||
|
|||
</view> |
|||
|
|||
</view> |
|||
@ -0,0 +1,51 @@ |
|||
/* pages/signIn/signIn.wxss */ |
|||
.container { |
|||
width: 100%; |
|||
display: flex; |
|||
background: #fff; |
|||
} |
|||
.left_side { |
|||
width: 203rpx !important; |
|||
min-height: 100vh; |
|||
border-right: 1px solid #f6f6f6; |
|||
} |
|||
.left_side .van-sidebar-item__text { |
|||
width: 203rpx !important; |
|||
} |
|||
.left_side .van-sidebar-item { |
|||
background: none; |
|||
text-align: center; |
|||
width: 203rpx; |
|||
height: 90rpx; |
|||
padding: 25rpx 0 !important; |
|||
} |
|||
.left_side .van-sidebar-item--selected { |
|||
border: none !important; |
|||
|
|||
|
|||
} |
|||
.left_side .van-sidebar-item__text { |
|||
height: 47rpx; |
|||
width: 100%; |
|||
font-size: 36rpx; |
|||
color: #666; |
|||
} |
|||
.left_side .van-sidebar-item { |
|||
width: 203rpx; |
|||
} |
|||
.left_side .van-sidebar-item--selected .van-sidebar-item__text { |
|||
border-left: 6rpx solid #000; |
|||
color: #000; |
|||
} |
|||
|
|||
.right_con { |
|||
width: 546rpx; |
|||
padding-bottom: 170rpx; |
|||
} |
|||
.right_con image { |
|||
display: block; |
|||
width: 476rpx; |
|||
height: 290rpx; |
|||
border-radius: 10rpx; |
|||
margin: 0 auto; |
|||
} |
|||
@ -0,0 +1,84 @@ |
|||
{ |
|||
"description": "项目配置文件,详见文档:https://developers.weixin.qq.com/miniprogram/dev/devtools/projectconfig.html", |
|||
"packOptions": { |
|||
"ignore": [ |
|||
{ |
|||
"value": ".eslintrc.js", |
|||
"type": "file" |
|||
} |
|||
], |
|||
"include": [] |
|||
}, |
|||
"setting": { |
|||
"urlCheck": false, |
|||
"es6": true, |
|||
"enhance": true, |
|||
"postcss": true, |
|||
"preloadBackgroundData": false, |
|||
"minified": true, |
|||
"newFeature": false, |
|||
"coverView": true, |
|||
"nodeModules": false, |
|||
"autoAudits": false, |
|||
"showShadowRootInWxmlPanel": true, |
|||
"scopeDataCheck": false, |
|||
"uglifyFileName": false, |
|||
"checkInvalidKey": true, |
|||
"checkSiteMap": true, |
|||
"uploadWithSourceMap": true, |
|||
"compileHotReLoad": true, |
|||
"lazyloadPlaceholderEnable": false, |
|||
"useMultiFrameRuntime": true, |
|||
"useApiHook": true, |
|||
"useApiHostProcess": true, |
|||
"babelSetting": { |
|||
"ignore": [], |
|||
"disablePlugins": [], |
|||
"outputPath": "" |
|||
}, |
|||
"useIsolateContext": false, |
|||
"userConfirmedBundleSwitch": false, |
|||
"packNpmManually": true, |
|||
"packNpmRelationList": [ |
|||
{ |
|||
"packageJsonPath": "./package.json", |
|||
"miniprogramNpmDistDir": "./" |
|||
} |
|||
], |
|||
"minifyWXSS": true, |
|||
"disableUseStrict": false, |
|||
"minifyWXML": true, |
|||
"showES6CompileOption": false, |
|||
"useCompilerPlugins": false, |
|||
"ignoreUploadUnusedFiles": true, |
|||
"useStaticServer": true |
|||
}, |
|||
"compileType": "miniprogram", |
|||
"libVersion": "2.23.2", |
|||
"appid": "wx587bc0e09def1d82", |
|||
"projectname": "wthmini", |
|||
"condition": { |
|||
"search": { |
|||
"list": [] |
|||
}, |
|||
"conversation": { |
|||
"list": [] |
|||
}, |
|||
"game": { |
|||
"list": [] |
|||
}, |
|||
"plugin": { |
|||
"list": [] |
|||
}, |
|||
"gamePlugin": { |
|||
"list": [] |
|||
}, |
|||
"miniprogram": { |
|||
"list": [] |
|||
} |
|||
}, |
|||
"editorSetting": { |
|||
"tabIndent": "insertSpaces", |
|||
"tabSize": 4 |
|||
} |
|||
} |
|||
@ -0,0 +1,8 @@ |
|||
{ |
|||
"setting": { |
|||
"compileHotReLoad": true |
|||
}, |
|||
"condition": {}, |
|||
"description": "项目私有配置文件。此文件中的内容将覆盖 project.config.json 中的相同字段。项目的改动优先同步到此文件中。详见文档:https://developers.weixin.qq.com/miniprogram/dev/devtools/projectconfig.html", |
|||
"projectname": "wechat.junfei.iiixo.com" |
|||
} |
|||
@ -0,0 +1,7 @@ |
|||
{ |
|||
"desc": "关于本文件的更多信息,请参考文档 https://developers.weixin.qq.com/miniprogram/dev/framework/sitemap.html", |
|||
"rules": [{ |
|||
"action": "allow", |
|||
"page": "*" |
|||
}] |
|||
} |
|||
@ -0,0 +1,93 @@ |
|||
const app = getApp() |
|||
|
|||
const service = (options) => { |
|||
return new Promise((resolve, reject) => { |
|||
wx.showLoading({ |
|||
title: '加载中', |
|||
}) |
|||
wx.request({ |
|||
url: `${app.globalData.baseurl}${options.url}`, |
|||
method: options.method, |
|||
data: options.data, |
|||
header: { |
|||
'content-type': options.isJson ? 'application/json' : 'application/x-www-form-urlencoded', |
|||
'M-Token': wx.getStorageSync('token') ? wx.getStorageSync('token') : '' // 看自己是否需要
|
|||
}, |
|||
success(request) { |
|||
// console.log('success:', request);
|
|||
if(request.data.code == 1) { |
|||
resolve(request.data) |
|||
// }else if(request.data.code == 508) {
|
|||
// wx.showModal({
|
|||
// title: '提示',
|
|||
// content: '当前暂未登录',
|
|||
// showCancel: false,
|
|||
// confirmText: '立即登录',
|
|||
// success: res => {
|
|||
// if (res.confirm) {
|
|||
// wx.navigateTo({
|
|||
// url: '/pages/login/login'
|
|||
// })
|
|||
// }
|
|||
// }
|
|||
// })
|
|||
} |
|||
// if (request.data.code == 0) {
|
|||
// resolve(request)
|
|||
// } else {
|
|||
// reject(request)
|
|||
// }
|
|||
}, |
|||
fail(error) { |
|||
console.log('error:', error); |
|||
reject(error.data) |
|||
}, |
|||
complete: () => { |
|||
setTimeout(() => { |
|||
wx.hideLoading(); |
|||
}, 100); |
|||
} |
|||
}) |
|||
}) |
|||
} |
|||
|
|||
export default service |
|||
|
|||
/* |
|||
// 示例get请求
|
|||
const demoGetApi = (options) => { |
|||
return service({ |
|||
url: '', |
|||
method: 'GET', |
|||
data: options |
|||
}) |
|||
} |
|||
|
|||
// 示例post参数请求
|
|||
const demoPostApi = (options) => { |
|||
return service({ |
|||
url: '', |
|||
method: 'POST', |
|||
data: options, |
|||
}) |
|||
} |
|||
|
|||
|
|||
// 示例put请求
|
|||
const demoPutApi = (options) => { |
|||
return service({ |
|||
url: '', |
|||
method: 'PUT', |
|||
data: options |
|||
}) |
|||
} |
|||
|
|||
// 示例DELETE
|
|||
const demoRemoveApi = (options) => { |
|||
return service({ |
|||
url: '', |
|||
method: 'DELETE', |
|||
data: options |
|||
}) |
|||
} |
|||
*/ |
|||
|
After Width: | Height: | Size: 1.8 KiB |
|
After Width: | Height: | Size: 1.5 KiB |
|
After Width: | Height: | Size: 1.8 KiB |
|
After Width: | Height: | Size: 1.8 KiB |
|
After Width: | Height: | Size: 1.9 KiB |
|
After Width: | Height: | Size: 1.8 KiB |
|
After Width: | Height: | Size: 3.5 KiB |
|
After Width: | Height: | Size: 3.8 KiB |
|
After Width: | Height: | Size: 4.6 KiB |
|
After Width: | Height: | Size: 3.2 KiB |
|
After Width: | Height: | Size: 3.6 KiB |
|
After Width: | Height: | Size: 1.7 KiB |
|
After Width: | Height: | Size: 2.4 KiB |
|
After Width: | Height: | Size: 1.4 KiB |
|
After Width: | Height: | Size: 2.1 KiB |
|
After Width: | Height: | Size: 2.1 KiB |
|
After Width: | Height: | Size: 1.2 KiB |
|
After Width: | Height: | Size: 1.0 KiB |
|
After Width: | Height: | Size: 1.0 KiB |
|
After Width: | Height: | Size: 1.0 KiB |
|
After Width: | Height: | Size: 1.1 KiB |
|
After Width: | Height: | Size: 7.8 KiB |
|
After Width: | Height: | Size: 1.1 KiB |
|
After Width: | Height: | Size: 1.0 KiB |
|
After Width: | Height: | Size: 1.1 KiB |
|
After Width: | Height: | Size: 1015 B |
|
After Width: | Height: | Size: 1003 B |
|
After Width: | Height: | Size: 1.0 KiB |
|
After Width: | Height: | Size: 996 B |
|
After Width: | Height: | Size: 1.0 KiB |
|
After Width: | Height: | Size: 1012 B |
|
After Width: | Height: | Size: 1.1 KiB |
|
After Width: | Height: | Size: 2.2 KiB |
|
After Width: | Height: | Size: 1008 B |
|
After Width: | Height: | Size: 1.0 KiB |
|
After Width: | Height: | Size: 999 B |
|
After Width: | Height: | Size: 1.0 KiB |
|
After Width: | Height: | Size: 1022 B |
|
After Width: | Height: | Size: 1013 B |
|
After Width: | Height: | Size: 1.0 KiB |