元素水平+垂直居中

昨天的用户页的用户头像,是根据已知的像素大小,设置固定的值,达到居中的效果。

今日切换机型进行适配,发现对不同尺寸大小的屏幕不匹配。所以对wxss进行修改,真正达到水平+垂直居中。

参考博客:https://blog.csdn.net/qq_32623363/article/details/77101971

修改部分的wxss代码:

.portrait-user {
position: absolute;
width: 64px;
height: 94px;
/* 水平+垂直居中 */
margin: auto;
top: 0;
bottom: 0;
left: 0;
right: 0;
justify-content: center;
}
/* 该元素的父元素,需要设置position: relative; */

用户页--设置模块

暂时只做了四个部分:

wxml+wxss代码:

<view class='settingMod'>
<view class='settingItem'>
<text class='settingText'>{{weather}}</text>
<switch class='switch-weather' color='#8CBEF5' bindchange='switchChange'></switch>
</view>
<view class='settingItem' bindtap='toEdit'>
<text class='settingText'>分享攻略</text>
<image class='arrow' src='{{arrowUrl}}'></image>
</view>
<view class='settingItem'>
<text class='settingText'>其他设置</text>
<image class='arrow' src='{{arrowUrl}}'></image>
</view>
<view class='settingItem'>
<text class='settingText'>意见反馈</text>
<icon class='settingIcon' type='info' size=''></icon>
<image class='arrow' src='{{arrowUrl}}'></image>
</view>
</view>
.settingItem {
height: 35px;
border-bottom: solid #7676776b;
padding-top: 5px;
}
.settingText,.settingIcon {
font-size: 18px;
vertical-align: middle;/*垂直对齐方式*/
padding-left: 10px;
}
.switch-weather {
float: right;
padding-right: 10px;
}
.arrow {
float: right;
width: 32px;
height: 32px;
padding-right: 10px;
}

开关获取天气

开关用了switch组件,通过bindchange属性来触发开关事件。

天气信息,是从和风天气获取的实时天气信息。

js代码:

  /**
* 获取实时天气数据
*/
switchChange: function(e){
// console.log(e);
if(e.detail.value){
wx.request({
url: 'https://free-api.heweather.com/s6/weather/now?parameters',
data: {
location: "上海",
key: "***"
},
success:(res)=>{
console.log(res);
var location = res.data.HeWeather6[].basic.location;
var weather = res.data.HeWeather6[].now.cond_txt;
var tmp = res.data.HeWeather6[].now.tmp;
this.setData({
weather: location + " " + weather + " " + tmp + "度"
})
}
})
}
else{
this.setData({
weather: "打开开关,获取实时天气"
})
}
}

location,这里暂时设定为固定城市,后续会根据获取的位置信息而改变。

key,需要到和风天气的网站注册后获取。

分享攻略页面

点击分享攻略,会跳转到分享编辑页面。该页面有上传图片、发送位置信息等功能。

用wx.navigateTo进行页面跳转;当然,用navigator组件也是同样的效果。

攻略编辑页面,是一个form表单,里面的数据都要向服务器传输。

第一部分,文字输入框 + 图片输入框

wxml+wxss代码:

<view class='editMod'>
<textarea name="blog" placeholder='分享你的美食'></textarea>
<image src='{{PicUrl}}' class='addPic' wx:if="{{upImg}}"></image>
<image src='{{addPicUrl}}' class='addPic' bindtap='addImg'></image>
</view>
.editMod {
border-bottom: solid #7676776b;
padding-top: 5px;
}
.editMod textarea {
padding: 20px;
}
.addPic {
width: 80px;
height: 80px;
padding-left: 20px;
padding-bottom: 20px;
}

在对图片进行添加后,因为要上传到服务器进行保存,所以我们在腾讯云上,来搭建小程序的服务器。

微信小程序—day04的更多相关文章

  1. 微信小程序开发心得

    微信小程序也已出来有一段时间了,最近写了几款微信小程序项目,今天来说说感受. 首先开发一款微信小程序,最主要的就是针对于公司来运营的,因为,在申请appid(微信小程序ID号)时候,需要填写相关的公司 ...

  2. 微信小程序体验(2):驴妈妈景区门票即买即游

    驴妈妈因为出色的运营能力,被腾讯选为首批小程序内测单位.驴妈妈的技术开发团队在很短的时间内完成了开发任务,并积极参与到张小龙团队的内测问题反馈.驴妈妈认为,移动互联网时代,微信是巨大的流量入口,也是旅 ...

  3. 微信小程序(微信应用号)组件讲解

    这篇文章主要讲解微信小程序的组件. 首先,讲解新建项目.现在有句话:招聘三天以上微信小程序开发,这个估计只能去挖微信的工程师了.技术新,既然讲解,那我们就从开始建项目讲解. 打开微信web开发者工具, ...

  4. 神技!微信小程序(应用号)抢先入门教程(附最新案例DEMO-豆瓣电影)持续更新

    微信小程序 Demo(豆瓣电影) 由于时间的关系,没有办法写一个完整的说明,后续配合一些视频资料,请持续关注 官方文档:https://mp.weixin.qq.com/debug/wxadoc/de ...

  5. 通过微信小程序看前端

    前言 2016年9月22日凌晨,微信官方通过“微信公开课”公众号发布了关于微信小程序(微信应用号)的内测通知.整个朋友圈瞬间便像炸开了锅似的,各种揣测.介绍性文章在一夜里诞生.而真正收到内测邀请的公众 ...

  6. 快速了解微信小程序的使用,一个根据小程序的框架开发的todos app

    微信官方已经开放微信小程序的官方文档和开发者工具.前两天都是在看相关的新闻来了解小程序该如何开发,这两天官方的文档出来之后,赶紧翻看了几眼,重点了解了一下文档中框架与组件这两个部分,然后根据简易教程, ...

  7. 来自于微信小程序的一封简讯

    9月21晚间,微信向部分公众号发出公众平台-微信应用号(小程序)的内测邀请,向来较为低调的微信在这一晚没人再忽视它了. 来自个人博客:Damonare的个人博客 一夜之间火了的微信应用号你真的知道吗? ...

  8. 微信小程序前端源码逻辑和工作流

    看完微信小程序的前端代码真的让我热血沸腾啊,代码逻辑和设计一目了然,没有多余的东西,真的是大道至简. 废话不多说,直接分析前端代码.个人观点,难免有疏漏,仅供参考. 文件基本结构: 先看入口app.j ...

  9. 微信小程序初探

    做为码农相信大家最近肯定都会听到微信小程序,虽然现阶段还没有正式开放注册,但大家可以还是可以开发测试. 到微信的WIKI(http://mp.weixin.qq.com/wiki?t=resource ...

随机推荐

  1. 关于最新版AFNetworking(3.0)上传多张图片的问题

    最新版的AF已经废弃了很多以前的类,所以很多以前的方法都不能用了,当然最主要还是为了适应ipV6所做的更改.楼主最近正在写多张图片上传,碰到了一些问题,解决之后直接封装了一个方法,废话有点多了,上代码 ...

  2. 给windows添加路由

    route add 10.0.0.0 mask 255.0.0.0 172.16.1.253 -p

  3. 使用IPDB调试Python代码

    (转载自:https://xmfbit.github.io/2017/08/21/debugging-with-ipdb/) IPDB是什么?IPDB(Ipython Debugger),和GDB类似 ...

  4. DU1525 Euclid's Game 博弈

    HDU1525 Euclid's Game 博弈 题意 给定两个数字 a, b. 每次只能用 较大的值 减去 较小的值的倍数, 两个人轮流进行操作, 第一个得到 0 的胜利. 分析 对于 a == b ...

  5. HDU 1028 Ignatius and the Princess III 整数的划分问题(打表或者记忆化搜索)

    传送门: http://acm.hdu.edu.cn/showproblem.php?pid=1028 Ignatius and the Princess III Time Limit: 2000/1 ...

  6. 将Tomcat设置为windows自动启动的服务

    一般情况下Tomcat服务需要手动运行批命令启动服务.在windows操作系统下如果需要将Tomcat变成自动启动的服务,只需按以下步骤操作即可: 方法/步骤 将Tomcat设置成服务(假设我们缺省的 ...

  7. c#聊聊文件数据库kv

    现在有很多KV嵌入式存储,或者已经增加的.leveldb,RaptorDB等,都是相对比较好的存储.基本存储,一般配置.大概在6w/s左右.当然还有缓存等设置问题.这些基本是字符串和int的存储,对于 ...

  8. 浅析Vue原理(部分源码解析)

    响应式 Object.defineProperty Object.defineProperty(obj, prop, descriptor) // 对象.属性.描述符 Object.definePro ...

  9. MySQL学习之流程结构

    流程结构 流程结构:代码的执行顺序. if分支 根据要求选择合适的执行部分. 基本语法 if在MySQL中有两种基本用法 1.用在select查询当中,当作一种条件来进行判断. 基本语法:if(条件, ...

  10. (Nagios)-check_hpasm[HP]

    Nagios Check_hp HP 2014年11月18日 下午 08:49  https://IP:2381     [root@nagios ~]# tar zxvf check_hp_blad ...