最近微信开发小程序挺火的,自己选择了腾讯云官方推出的相册。

先下载:

破解版IDE下载地址,以及使用说明:

http://download.csdn.net/detail/richard_jason/9660819
http://download.csdn.net/detail/richard_jason/9660821

这里由于csdn有上传大小限制,所以只能做两次上传了。要放在一起看哦。

安装步骤

一个步骤都不能错哦

1、安装0.7 — 扫码登陆 — 关闭0.7
2、安装0.9 ——不要启动程序——替换3个文件
文件在weapp-ide-crack-master文件夹中
替换目录
C:\Program Files (x86)\Tencent\微信web开发者工具\package.nw\app\dist\weapp\appservice\asdebug.js
C:\Program Files (x86)\Tencent\微信web开发者工具\package.nw\app\dist\components\create\createstep.js
C:\Program Files (x86)\Tencent\微信web开发者工具\package.nw\app\dist\stroes\projectStores.js
3、打开0.9——新建项目:appid和名称随便填,路径选demo的路径

第一步:搭开发环境

首先,我们需要在本地搭建好微信「小程序」的开发环境。即下载开发者工具。打开「官方下载地址」,根据自己的操作系统选择。我使用的是 Windows版。

扫码登录,我已经见过项目了,所以有一个项目

安装好之后打开运行,会要求微信扫码登陆。之后,就可以看到创建项目的页面了。

选择添加项目,没有 AppID 就选无(如果乱写会报错,到时可能无法进入项目)。如果你选择的项目目录为空,请如图所示勾选在“当前目录中创建quick start项目”。

点击“添加项目”之后,我们会进入开发工具的调试页面。

第二步:下载「小相册」源码

接下来,我们下载「小相册」的源码。可以选择直接从http://imgcache.qq.com/qcloud/la/demo-source/qcloud-applet-album.zip下载,也可以从腾讯云团队的 Github 仓库拉取。我推荐从 Github 仓库拉取,这样可以及时获取最新的代码。

git clone https://github.com/CFETeam/weapp-demo-album.git

最终,我们会得到类似这样的文件目录。

简单解释下目录结构:

  • applet(或app): 「小相册」应用包代码,可直接在微信开发者工具中作为项目打开。
  • server: 搭建的Node服务端代码,作为服务器和app通信,提供 CGI 接口示例,用于拉取图片资源、上传图片、删除图片。
  • assets:「小相册」的演示截图。

源码下载完成之后,我们打开微信 web 开发者工具,新建项目「小相册」,选择目录applet(或app)。


「小相册」源码分析

第二次登录之后:

点击打开

在进行部署之前,我们来简单分析一下「小相册」的具体代码。毕竟只看效果不是我们的目的,我们的目的是以「小相册」为例,了解如何开发小程序并与服务端进行交互

「小相册」包含一个描述整体程序的 app 和多个描述各自页面的 page。主程序 app 主要由三个文件组成,分别是 app.js(小程序逻辑)、app.json(小程序公共设置)和 app.wxss(小程序公共样式表),其中前两个为必备文件。config.js 文件中包含了一些部署域名的设置,现在不用管。

在 pages 目录下,有两个 page 页面,分别是 index 和 album。页面结构算是比较简单的,其中 index 是小程序启动时默认进入的页面。每个页面下,至少要有 .js(页面逻辑)和 .wxml(页面结构)两个文件,.wxss(页面样式表)和 .json(页面配置)文件为选填。你可能注意到了,这些文件的文件名与父目录的名称相同。这是微信官方的规定,目的是减少配置项,方便开发者。

接下来我们以 index 页面为例做简单的解释。index.wxml 是这个页面的表现层文件,其中的代码非常简单,可以分为上下两大部分。

<view><view class="page-top"><text class="username">恭喜你</text><text class="text-info">成功地搭建了一个微信小程序</text><view class="page-btn-wrap"><button class="page-btn" bindtap="gotoAlbum">进入相册</button></view></view><view class="page-bottom"><text class="qr-txt">分享二维码邀请好友结伴一起写小程序!</text><image src="../../images/qr.png" class="qr-img"></image><image src="../../images/logo.png" class="page-logo"></image></view>
</view>

页面的演示效果如下:

我们看到,页面上有一个“进入相册”的按钮。正常理解,点击后该按钮后我们就可以进入相册了(这不废话嘛)。那小程序背后是怎样实现该操作的呢?

在 index.wxml 中,我们发现对应的 button 标签上定义了一个 bindtap 属性,绑定了一个叫做gotoAlbum 的方法。而这个方法可以在 index.js 文件中找到。事实上,文件中也只定义了这一个方法,执行的具体动作就是跳转到 album 页面。

Page({// 前往相册页gotoAlbum() {wx.navigateTo({ url: '../album/album' });},
});

album.js 页面中编写了程序的主要逻辑,包括选择或拍摄图片、图片预览、图片下载和图片删除;album.wxml 中三种视图容器 view、scroll-view、swiper均有使用,还提供了消息提示框 toast。具体方法和视图的实现请查看项目源码。所有的这些功能都写在 Page 类中。

lib 目录下提供了小程序会用的一些辅助函数,包括异步访问和对象存储 COS 的 API。

总的来说,和微信官方宣传的一样,在开发者工具下进行小程序的开发,效率确实提高了很多,而且有很多微信提高的组件和 API。所以,在开发速度这点上的体验还是非常爽的。

另外,由于「小相册」需要使用诸多云端能力,如图片的上传和下载,我们还需要进行服务器端的部署和设置。具体请看接下来的步骤。

第三步:云端部署 server 代码

虽然服务端的开发不是本文的重点,但是为了全面地体验「小相册」的整个开发部署流程,我们还是有必要了解服务端的部署,这里我们使用的是腾讯云。

如果你想更爽一点,那么可以选择腾讯云官方提供的小程序云端镜像。「小相册」的服务器运行代码和配置已经打包成腾讯云 CVM 镜像,可以直接使用。可谓是一键部署好云端。

如果你以前没有使用过腾讯云,可以选择免费试用(我已经领取了 8 天的个人版服务器),或者领取礼包以优惠的价格购买所需的服务。

你也可以选择将「小相册」源码中的server文件夹上传到自己的服务器。

第四步:准备域名和配置证书

如果你已经有腾讯云的服务器和域名,并配置好了 https,那么可以跳过第 4-6 步。

在微信小程序中,所有的网络请求受到严格限制,不满足条件的域名和协议无法请求。简单来说,就是你的域名必须走 https 协议。所以你还需要为你的域名申请一个证书。如果没有域名,请先注册一个。由于我们没有收到内测,也就暂时不用登录微信公众平台配置通信域名了。

第五步:Nginx 配置 https

微信小程序云端示例镜像中,已经部署好了 Nginx,但是还需要在 /etc/nginx/conf.d 下修改配置中的域名、证书、私钥。

请将红框部分换成自己的域名和证书,并且将 proxy_pass 设置为 Node.js 监听的端口,我的是 9993。

配置完成后,重新加载配置文件并且重启 Nginx。

sudo service nginx reload
sudo service nginx restart

第六步:域名解析

我们还需要添加域名记录,将域名解析到我们的云服务器上,这样才可以使用域名进行 https 服务。在腾讯云注册的域名,可以直接使用云解析控制台来添加主机记录,直接选择上面购买的 CVM。

解析生效后,我们的域名就支持 https 访问了。

第七步:开通和配置 COS

由于我们希望实现动静分离的架构,所以选择把「小相册」的图片资源是存储在 COS 上的。要使用 COS 服务,需要登录 COS 管理控制台,然后在其中完成以下操作。

  1. 点击创建 Bucket。会要求选择所属项目,填写相应名称。这里,我们只需要填上自己喜欢的 Bucket 名称即可。
  2. 然后在 Bucket 列表中,点击刚刚创建的 Bucket。然后在新页面点击“获取API密钥”。 弹出的页面中包括了我们所需要的三个信息:唯一的 APP ID,一对SecretID和SecretKey(用于调用 COS API)。保管好这些信息,我们在稍后会用到。
  3. 最后,在新的 Bucket 容器中创建文件夹,命名为photos。这点后面我们也会提到。

第八步:启动「小相册」的服务端

在官方提供的镜像中,小相册示例的 Node 服务代码已部署在目录 /data/release/qcloud-applet-album下。进入该目录,如果是你自己的服务器,请进入相应的文件夹。

cd /data/release/qcloud-applet-album

在该目录下,有一个名为 config.js 的配置文件(如下所示),按注释修改对应的 COS 配置:

module.exports = {// Node 监听的端口号port: '9993',ROUTE_BASE_PATH: '/applet',cosAppId: '填写开通 COS 时分配的 APP ID',cosSecretId: '填写密钥 SecretID',cosSecretKey: '填写密钥 SecretKey',cosFileBucket: '填写创建的公有读私有写的bucket名称',
};

另外,cd ./routes/album/handlers,修改 list.js,将 const listPath 的值修改为你的Bucket 下的图片存储路径。如果是根目录,则修改为 '/'。当前服务端的代码中将该值设置为了 '/photos' ,如果你在第七步中没有创建该目录,则无法调试成功。

小相册示例使用 pm2 管理 Node 进程,执行以下命令启动 node 服务:

pm2 start process.json

第九步:配置「小相册」通信域名

然后点击调试,即可打开小相册Demo开始体验。

如何入门微信小程序开发相关推荐

  1. 微信小程序怎么在wxml中插入多个图片_白云工商带你10分钟入门微信小程序开发...

    10分钟入门微信小程序开发 程序开发难吗? No!来白云工商带你10分钟入门微信小程序开发! 英语不好能学好程序开发吗? 当然能,程序开发常见的也就那几个单词,只要热爱,非常简单! 欣赏 首先,来欣赏 ...

  2. 一篇文入门微信小程序开发环境搭建

    2017年小程序发布以来,经过近5年的发展,微信小程序开发已经日趋成熟.越来越多的商家已经开通了线上的电商小程序,一个是给店铺引流,另一方面也是更好的为顾客服务. 本文利用一定的篇幅讲解一下微信小程序 ...

  3. 一、零基础入门微信小程序开发之创建项目工程同时完成引导页开发

    前言 创建这个系列博客的原因是因为最近在加深微信小程序的学习,按照我之前的学习习惯是不喜欢记录的,加上自己有拖延症就更不太愿意做这件事情了,同时我要给学生上课,但总是缺少教材所以就开了这个系列的博客, ...

  4. 入门微信小程序开发(二)wxml与wxss

    一.初识WXML 对于每一位前端开发者而言,熟练的编写静态页面是入门的开始,在小程序中这一点也无法避免.在介绍微信小程序功能交互之前,我们先了解在小程序中如何实现页面布局与页面样式,这里先来介绍WXM ...

  5. 入门微信小程序开发(三)数据绑定的几种用法

    一.数据绑定 与书写HTML页面一样,小程序页面也只能通过多写多练提升.在构建完页面后就出现了一个问题,我们该如何获取组件元素让数据与之关联呢? 在网页开发中,我们同样使用JS操作DOM,包括数据渲染 ...

  6. 10分钟入门 - 微信小程序开发

    注册微信小程序 如果你还没有微信公众平台的账号,请先进入微信公众平台首页,点击 "立即注册" 按钮进行注册.注册的账号类型可以是订阅号.服务号.小程序以及企业微信,我们选择 &qu ...

  7. 微信小程序开发入门(连载)—— 认识微信小程序

    从今天开始,为大家开一门连载课程 --<微信小程序开发入门>. 2011 年,腾讯公司新的即时通讯社交软件微信正式上线,凭借其新颖的设计风格和良好的使用体验,微信很快就获得了大量的用户.据 ...

  8. 微信小程序开发竟然这么简单?!

    无处不在的小程序 自从 2017 年 1 月 9 日,张小龙在 2017 微信公开课 Pro 上发布小程序开始算起,微信小程序已经走过了三个年头.从当初的只闻其名到今天的耳濡目染,微信小程序可以说已经 ...

  9. 微信小程序开发:获取位置打开地图

    目录 01 准备工作 02 小程序基础知识 微信小程序的四种类型的文件 app.json app.js app.wxss app.wxml 目录树 03 获取位置打开地图 参考 效果 程序说明 04 ...

最新文章

  1. c语言socket句柄函数传递,通过源码解析 Node.js 中进程间通信中的 socket 句柄传递...
  2. sendto成功返回
  3. 技术管理角色认知-管理都需要做哪些事
  4. jpannel设置位置xy_实用的摄影技巧!10种常见摄影场景的单反相机设置技巧!
  5. JQuery使用笔记
  6. [Codevs] 1014 棋盘染色
  7. python对于设计师有什么用-《学习PYTHON—做个有编程能力的设计师》
  8. Vue中this.$router.replace和this.$router.push的区别
  9. js调用百度地图搜索功能
  10. IntelliJ IDEA 2021.1.2 x64版的 IDEA 创建 jsp项目
  11. 硬原理——DC-DC升压(BOOST)电路原理
  12. ESP8266 教程1 — ESP8266硬件平台介绍
  13. 广谱感应水处理器详细说明
  14. android 输入法字典_Android输入法开发
  15. Xcode git的使用
  16. 【渝粤教育】国家开放大学2019年春季 0553-22T色彩 参考试题
  17. 计算机毕业设计android的手机点名签到学生请假考勤系统app(源码+系统+mysql数据库+Lw文档)
  18. 用户太多:互联网巨头之惑
  19. C语言结构、联合、位操作、位域和枚举
  20. kubernetes学习(4)---Nginx搭建简单的文件服务器

热门文章

  1. 基于Java毕业设计超市货品进销存系统后台源码+系统+mysql+lw文档+部署软件
  2. 正则表达式在线练习网站与资料
  3. 使用Fiddler抓取到的“姐夫酷”API接口
  4. HEIC图片转换器,heic转jpg
  5. DataPipeline实时数据融合平台V3.0里程碑版发布!澎湃新动能
  6. CentOS 7.x 快速搭建ARK服务器
  7. 2017年双十一最全面的大数据分析报告在此!+2018年双十一已经开始,厚昌竞价托管教你如何应对流量流失?+2019年双十一大战一触即发:阿里、京东都有哪些套路和玩法
  8. 远程擦除数据是什么?
  9. 如何用 GPU硬件层加速优化Android系统的游戏流畅度—应用性能管理
  10. 37、弱电网络工程师必知系列:交换机CPU和CPU占用率的基础知识