微信小程序-阅读小程序demo

原文出处:http://www.cnblogs.com/muyixiaoguang/p/5917986.html?hmsr=toutiao.io&utm_medium=toutiao.io&utm_source=toutiao.io

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

  一、先来上图:

  

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

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

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

       

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
"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" "最新"
     }]
   },

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

  

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

  我们打开首页index页面

  

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

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

    我们打开视图页面

    

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

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

      

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

    

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

    

    具体代码:

    

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
//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;
                 }
 
                
})

  

    然后about页面

    

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

  三、最后

        

      打个广告,让大家可以找打微信程序开发的组织,感谢博客园平台!

  如果大家想讨论或则找微信开发的资料,有兴趣可以添加微信小程序(应用号)qq群:390289365 

    另外,微信小程序开发社区 网站已经于16年09月25日上线啦,链接地址:www.cwechat.org.欢迎大家访问学习交流微信小程序开发

  最后,放上程序的源码地址:http://www.cwechat.org/thread-25-1-1.html


  • 2
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值