微信小程序-小说阅读小程序实例(demo)


Posted in Javascript onJanuary 12, 2017

今天和朋友聊天说到小程序,然后看在看书,然后我们就弄了个小读书的demo,然后现在分享一下。

一、先来上图:

微信小程序-小说阅读小程序实例(demo)

二、然后下面是详细的说明

首先先说下边的tabBar,项目采用json格式的数据配置,不得不说,现在这个是趋势,.net core的配置也是这种方式了(暴露我是.net 阵营了)。

在这里好多同学会发现好多颜色的配置都不管用,是的,现在有效的颜色是有限制的,具体的大家可以进入官方文档去查看。需要几个tabBar,就在list里面写几个,本篇问是三个,所以,你看了三个。上面的iconPath那就是tabBar的图标了,这个大小也是有限制的,40kb。然后,pagePath呢,就是此tabBar对应的页面链接。text就是限制内容,这里不多说了。

"tabBar": {

  "color": "#dddddd",

  "selectedColor": "#d92121",

  "borderStyle": "white",

  "backgroundColor": "#fff",

  "list": [{

   "pagePath": "pages/index",

   "iconPath": "images/main.png",

   "selectedIconPath": "images/main-s.png",

   "text": "主页"

  },{

   "pagePath": "pages/layout/hot",

   "iconPath": "images/hot.png",

   "selectedIconPath": "images/hot-s.png",

   "text": "最热"

  },{

   "pagePath": "pages/layout/new",

   "iconPath": "images/new.png",

   "selectedIconPath": "images/new-s.png",

   "text": "最新"

  }]

 },

打开项目代码目录,如下:

微信小程序-小说阅读小程序实例(demo)

这里发现样式和wxml以及js文件全是同名的,这是默认写法,这样默认三个文件就关联了。这又叫做:默认大于配置。

我们打开首页index页面

微信小程序-小说阅读小程序实例(demo)

可以看到上面的页面生命周期,我们可以在事件中写我们自己要处理的事件。

其中getApp();方法获取全局实例。

我们打开视图页面

微信小程序-小说阅读小程序实例(demo)

这里看到箭头指向的 wx:for=“”,这个是一个出来数组或列表对象的循环方法,而item是默认(又是默认)的单个列表元素。用不不想用item也可以起别名。

navigator就是导航标签了,这里,类似于html中的<a>标签,就不在说了。点击navigator的内容页面跳转对应页面,同样是用url传递数据。

微信小程序-小说阅读小程序实例(demo)

我们可以看到后台的代码:

微信小程序-小说阅读小程序实例(demo)

数据可以通过url传递,目标页面通过onLoad方法中的参数( 对象)获取。这里还可以看到书的详情是通过全局getApp获取全局实例,获取数据。这个数据就是在全局app.js里面,如下图:

微信小程序-小说阅读小程序实例(demo)

具体代码:

//app.js

App( {

  getBanner:function(){

    var bannerUrl=["../images/banner.jpg"];

    return bannerUrl;

  },

  getOneBook:function(id){

    var abook;

   var books = [

          {  id:"1",

            bookUrl:"../images/img1.jpg",

            bookName:"西方哲学史",

            bookInfor:"关于哲学"

          },

          {  

            id:"2",

            bookUrl:"../images/tmd.jpg",

            bookName:"塔木德",

            bookInfor:"关于信仰"            

          },

          {

            id:"3",

            bookUrl:"../images/holy.jpg",

            bookName:"圣经",

            bookInfor:"关于信仰" 

          },

          {

            id:"4",

            bookUrl:"../images/yuz.jpg",

            bookName:"果壳中的宇宙",

            bookInfor:"关于科学"

          },

          {

            id:"5",

            bookUrl:"../images/dream.jpg",

            bookName:"理想国",

            bookInfor:"关于哲学"

          },

          {

            id:"6",

            bookUrl:"../images/out.jpg",

            bookName:"失控",

            bookInfor:"关于经济"

          }

          ];

        for(i=0;i<books.length;i++){

          if(books[i].id == id){

            abook = books[i]; 

          }

        }

         return abook;

 },

  getBoookList:function(){

    var indexList = [

          {  id:"1",

            bookUrl:"../images/img1.jpg",

            bookName:"西方哲学史",

            bookInfor:"关于哲学"

          },

          {  

            id:"2",

            bookUrl:"../images/tmd.jpg",

            bookName:"塔木德",

            bookInfor:"关于信仰"            

          },

          {

            id:"3",

            bookUrl:"../images/holy.jpg",

            bookName:"圣经",

            bookInfor:"关于信仰" 

          },

          {

            id:"4",

            bookUrl:"../images/yuz.jpg",

            bookName:"果壳中的宇宙",

            bookInfor:"关于科学"

          },

          {

            id:"5",

            bookUrl:"../images/dream.jpg",

            bookName:"理想国",

            bookInfor:"关于哲学"

          },

          {

            id:"6",

            bookUrl:"../images/out.jpg",

            bookName:"失控",

            bookInfor:"关于经济"

          }

          ];

 

           return indexList;

        }
       
})

没多少东西,有兴趣可以下载源码查看,下面放源码地址。

三、最后

最后,放上程序的源码地址:demo

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
js调试系列 初识控制台
Jun 18 Javascript
JS回调函数的应用简单实例
Sep 17 Javascript
JS实现的新浪微博大厅文字内容滚动效果代码
Nov 05 Javascript
基于JavaScript代码实现兼容各浏览器的设为首页和加入收藏
Jan 07 Javascript
JavaScript数据类型转换的注意事项
Jul 31 Javascript
AngularJS实现按钮提示与点击变色效果
Sep 07 Javascript
给easyui datebox扩展一个清空的实例
Nov 09 Javascript
jquery实现瀑布流效果 jquery下拉加载新数据
Dec 12 Javascript
Html5 js实现手风琴效果
Apr 17 Javascript
Vue实现数字输入框中分割手机号码的示例
Oct 10 Javascript
jQuery发请求传输中文参数乱码问题的解决方案
May 22 jQuery
jQuery实现为动态添加的元素绑定事件实例分析
Sep 07 jQuery
微信小程序 使用canvas制作K线实例详解
Jan 12 #Javascript
JS实现仿百度文库评分功能
Jan 12 #Javascript
移动端基础事件总结与应用
Jan 12 #Javascript
微信小程序 PHP后端form表单提交实例详解
Jan 12 #Javascript
简单的渐变轮播插件
Jan 12 #Javascript
那些精彩的JavaScript代码片段
Jan 12 #Javascript
JavaScript实现星级评分
Jan 12 #Javascript
You might like
php中将汉字转换成拼音的函数代码
2012/09/08 PHP
解析zend studio中直接导入svn中的项目的方法步骤
2013/06/21 PHP
php中如何防止表单的重复提交
2013/08/02 PHP
一个图片地址分解程序(用于PHP小偷程序)
2014/08/23 PHP
在Win2003(64位)中配置IIS6+PHP5.2.17+MySQL5.5的运行环境
2016/04/04 PHP
Nginx下ThinkPHP5的配置方法详解
2017/08/01 PHP
关于php支持的协议与封装协议总结(推荐)
2017/11/17 PHP
JavaScript字符串String和Array操作的有趣方法
2012/12/18 Javascript
解决jquery1.9不支持browser对象的问题
2013/11/13 Javascript
[原创]推荐10款最热门jQuery UI框架
2014/08/19 Javascript
Node.js巧妙实现Web应用代码热更新
2015/10/22 Javascript
Bootstrap每天必学之js插件
2015/11/30 Javascript
AngularJS初始化静态模板详解
2016/01/14 Javascript
js上下视差滚动简单实现代码
2017/03/07 Javascript
jQuery插件FusionCharts实现的Marimekko图效果示例【附demo源码】
2017/03/24 jQuery
js实现可以点击收缩或张开的悬浮窗
2017/09/18 Javascript
NodeJs实现简单的爬虫功能案例分析
2018/12/05 NodeJs
通过实例了解JS 连续赋值
2019/09/24 Javascript
解决layui批量传值到后台操作时出现传值为空的问题
2019/09/28 Javascript
[01:21]DOTA2 新英雄 森海飞霞
2020/12/18 DOTA
python简单程序读取串口信息的方法
2015/03/13 Python
Python用模块pytz来转换时区
2016/08/19 Python
Python中用post、get方式提交数据的方法示例
2017/09/22 Python
使用Python的turtle模块画图的方法
2017/11/15 Python
关于python中的xpath解析定位
2020/03/06 Python
Python如何输出百分比
2020/07/31 Python
CSS3网格的三个新特性详解
2014/04/04 HTML / CSS
美国轮胎网站:Priority Tire
2018/11/28 全球购物
英智兴达软件测试笔试题
2016/10/12 面试题
电信专业应届生自荐信
2013/09/28 职场文书
初中三年学生的学习自我评价
2013/11/13 职场文书
党员民主生活会个人整改措施材料
2014/09/16 职场文书
人事代理委托书
2014/09/27 职场文书
2014年公务员转正工作总结
2014/11/07 职场文书
详解Python常用的魔法方法
2021/06/03 Python
Pandas实现批量拆分与合并Excel的示例代码
2022/05/30 Python