微信小程序—day05
小程序云服务器--环境配置
本来想要买腾讯云的云服务器,作为小程序的服务端的。无奈,腾讯云卖的太贵了,比阿里云要贵一倍,想想还是算了。
但是,没有服务端的接受,小程序的一些功能是实现不了的。找了一圈,发现一个腾讯云的小程序解决方案,完美解决了开发过程的问题(后期上线的话,要买服务器再说)
登陆微信公众平台,在 设置--开发者工具,开通腾讯云后,点击后台管理,就可以进入开发环境的配置页面。根据里面的操作进行配置,教程很全面。(也可以根据这个教程进行配置)链接:https://cloud.tencent.com/developer/article/1006816
服务器问题解决了,把之前未完成的代码复制过来,继续编写工作。
第一部分,文字输入框 + 图片输入框
接上一篇。
配置好服务环境,对图片上传后,就能正常显示了。
上传图片,完整js代码:
/**
* 添加图片
*/
addImg: function(e){
wx.chooseImage({
success: (res)=> {
// console.log(res)
util.showBusy('正在上传')
var tempFilePaths = res.tempFilePaths; // 上传图片
wx.uploadFile({
url: config.service.uploadUrl,
filePath: tempFilePaths[],
name: 'image', success: (res)=>{
util.showSuccess('上传图片成功')
// console.log(res)
res = JSON.parse(res.data)
// console.log(res)
this.setData({
upImg: true,
picUrl: tempFilePaths[],
temPath: tempFilePaths
})
},
fail: function (e) {
console.error(e)
}
})
},
fail: function (e) {
console.error(e)
}
})
}, /**
* 预览图片
*/
previewImg: function(e) {
wx.previewImage({
urls: this.data.temPath,
success: (res)=>{
// console.log(res)
}
})
},
util.show是一个弹窗显示,是展现给用户看的。wx.uploadFile中的url就是之前环境配置的服务器域名。
ps:图片模块代码写好后,进行测试过程中;发现图片依旧不显示,原来是picUrl中的p一个地方写成了大写,我还以为是环境配错了,找了半天的bug。看来编码还需要细心一些。
这里后来又添加了一个预览图片的功能,上传完图片后,点击图片可进行预览。
第二部分,位置信息 + 发布按钮
需要用到获取位置信息的api,官方文档
wxml+wxss代码:
<view class='editItem' bindtap='getLocation'>
<view class='location'>
<image class='locationImg' src='{{locationImgUrl}}'></image>
<text class='locationText'>{{location}}</text>
<image class='arrow' src='{{arrowUrl}}'></image>
</view>
</view>
<view class='submitButton'>
<button form-type='submit' size='mini'>发表</button>
</view>
.editItem {
height: 40px;
border-bottom: solid #7676776b;
padding-top: 5px;
}
.locationImg {
width: 32px;
height: 32px;
}
.location {
position: relative;
}
.locationText {
position: absolute;
padding-top: 5px;
padding-bottom: 5px;
}
.arrow {
float: right;
width: 32px;
height: 32px;
padding-right: 10px;
}
.submitButton {
height: 40px;
}
.submitButton button {
background-color: #8CBEF5;
color: #fff;
float: right;
top: 20px;
right: 20px;
}
js代码:
/**
* 获取位置信息
*/
getLocation: function(e){
wx.getSetting({
success:(res)=>{
if(!res.authSetting['scope.userLocation']){
wx.authorize({
scope: 'scope.userLocation',
success:(res)=>{
wx.chooseLocation({
success: (res)=> {
// console.log(res);
this.setData({
location: res.name
})
}
})
}
})
}
else{
wx.chooseLocation({
success: (res)=> {
// console.log(res);
this.setData({
location: res.name
})
}
})
}
}
})
}
这里的wx.getSetting方法中的scope.userLocation,是判断用户是否同意获取地理位置信息的权限,没有则提示用户。
发布按钮,表单提交,获取一下用户输入的信息和当前的时间日期,以便后续使用。
js代码:
/**
* 表单提交
*/
formSubmit: function(e){
// console.log(e)
var now = new Date();
// console.log(now)
var month = now.getMonth();
var date = now.getDate();
this.setData({
blog: e.detail.value.blog,
month: month+,
date: date,
show: false
})
},
完成后的用户编辑页面:

git代码托管
几天,写了不少东西了,传一下github吧,万一没了就惨了。
还未全部完成,先不放链接,等基本功能都完成后吧。
微信小程序—day05的更多相关文章
- 微信小程序开发心得
微信小程序也已出来有一段时间了,最近写了几款微信小程序项目,今天来说说感受. 首先开发一款微信小程序,最主要的就是针对于公司来运营的,因为,在申请appid(微信小程序ID号)时候,需要填写相关的公司 ...
- 微信小程序体验(2):驴妈妈景区门票即买即游
驴妈妈因为出色的运营能力,被腾讯选为首批小程序内测单位.驴妈妈的技术开发团队在很短的时间内完成了开发任务,并积极参与到张小龙团队的内测问题反馈.驴妈妈认为,移动互联网时代,微信是巨大的流量入口,也是旅 ...
- 微信小程序(微信应用号)组件讲解
这篇文章主要讲解微信小程序的组件. 首先,讲解新建项目.现在有句话:招聘三天以上微信小程序开发,这个估计只能去挖微信的工程师了.技术新,既然讲解,那我们就从开始建项目讲解. 打开微信web开发者工具, ...
- 神技!微信小程序(应用号)抢先入门教程(附最新案例DEMO-豆瓣电影)持续更新
微信小程序 Demo(豆瓣电影) 由于时间的关系,没有办法写一个完整的说明,后续配合一些视频资料,请持续关注 官方文档:https://mp.weixin.qq.com/debug/wxadoc/de ...
- 通过微信小程序看前端
前言 2016年9月22日凌晨,微信官方通过“微信公开课”公众号发布了关于微信小程序(微信应用号)的内测通知.整个朋友圈瞬间便像炸开了锅似的,各种揣测.介绍性文章在一夜里诞生.而真正收到内测邀请的公众 ...
- 快速了解微信小程序的使用,一个根据小程序的框架开发的todos app
微信官方已经开放微信小程序的官方文档和开发者工具.前两天都是在看相关的新闻来了解小程序该如何开发,这两天官方的文档出来之后,赶紧翻看了几眼,重点了解了一下文档中框架与组件这两个部分,然后根据简易教程, ...
- 来自于微信小程序的一封简讯
9月21晚间,微信向部分公众号发出公众平台-微信应用号(小程序)的内测邀请,向来较为低调的微信在这一晚没人再忽视它了. 来自个人博客:Damonare的个人博客 一夜之间火了的微信应用号你真的知道吗? ...
- 微信小程序前端源码逻辑和工作流
看完微信小程序的前端代码真的让我热血沸腾啊,代码逻辑和设计一目了然,没有多余的东西,真的是大道至简. 废话不多说,直接分析前端代码.个人观点,难免有疏漏,仅供参考. 文件基本结构: 先看入口app.j ...
- 微信小程序初探
做为码农相信大家最近肯定都会听到微信小程序,虽然现阶段还没有正式开放注册,但大家可以还是可以开发测试. 到微信的WIKI(http://mp.weixin.qq.com/wiki?t=resource ...
随机推荐
- bootstrap table 解析写死的json.并且把进度条放进列中。
function showPhaseInfo(phase){ //json字符串转json对象 var phaseInfo = eval(phase); $('#phaseTable').bootst ...
- ARM v8-A 系列CPU的MMU隐射分析
ARM v8-A 系列CPU的MMU隐射分析 摘要:V8-A系列CPU有ELX,X为0~3等4个异常级别,又有AArch64和AArch32两种执行状态,异常级别可以决定执行状态,而对应着执行状态,M ...
- Node.js笔记07——不使用generator自定义一个项目,深入了解项目结构
一.初始化项目 新建项目 git init manager 新建view文件夹,建几个静态文件夹 新建app.js 快速初始化项目依赖 npm init -y 安装express npm instal ...
- 调用WebService报错404问题 (转载)
我想在MVC4的项目添加一个webservice文件,访问没问题,但是最后调用方法就报404错误. 但是如果我全新ASP.NET 空Web应用程序 然后再添加一个webservice文件,就一切OK. ...
- 课时22.br标签(掌握)
br标签,如何在html中换行,可以使用br标签 1.br标签的作用:换行 2.br标签的格式:<br> 3.br标签的注意点: 3.1多个br标签可以连续使用,使用了多个br标签就会换多 ...
- golang刷Leetcode系列 --- 加1
加一 给定一个非负整数组成的非空数组,在该数的基础上加一,返回一个新的数组. 最高位数字存放在数组的首位, 数组中每个元素只存储一个数字. 你可以假设除了整数 0 之外,这个整数不会以零开头. 示例 ...
- mariadb或者mysql忘记root密码
windows======================net stop mysql #先停止mysql或者在服务管理里面停止 直接打开Windows的命令行(CMD)窗口(以管理员身份运行),输入 ...
- 记一次MySQL中Waiting for table metadata lock问题的处理
起因:由于需要,要把一张表的一个字段从不是 null 改成 可null,我用的Navicat Premium ,但是在保存的时候,工具无响应了,几个同事操作都是这样的,很奇怪,怀疑是不是由于表被锁了还 ...
- SpringBoot整合Eureka搭建微服务
1.创建一个services项目,添加三个子模块client(客户端).service(服务端).registry(注册中心) 1.1 创建一个services项目 1.2 添加pom.xml依赖 & ...
- Flink实例-Wordcount详细步骤
link实例之Wordcount详细步骤 1.我的IDE是IntelliJ IDEA.在官网上https://www.jetbrains.com/idea/下载最新版2018.2的IDEA,如下图.破 ...