1. tabBar
跳转到带有tabbar的页面必须使用:wx.switchTab({ url : '/index' });
2.小程序快速新建文件的方法
在app.json中配置不存在的文件,如下红框中;
保存编译后检测到post文件不存在会自动新建post文件夹并且新建4个基础开发文件;
3.模板嵌套以及模板嵌套数据传递
场景介绍:
在一个页面中嵌套3层模板,大致结构如图所示:
代码写法:
主要就是要import,不要忘记了wxss也需要import,不然样式不会生效
模板C是最底层的一个,在模板B中导入,代码如下:
模板C:
模板B:嵌套模板C;导入模板C的wxml 和 wxss文件;
导入最好是写相对路径,绝对路径会一直找不到文件
模板A嵌套模板B是同样的嵌套方法,不在赘述;
最终页面是直接导入模板A,如下:
关于嵌套模板的数据传递问题:
在最终页面的中可以看出使用了三次模板A,也就是会三次向模板A传递不同的数据,但是在模板A中只能有一种变量进行接收。这就需要使用 JS代码+模板数据的展开 两种方式来解决这个问题;
模板数据的展开: 就是在变量前使用三个点 "...";
对数据展开的理解:如果当前的inTheaters = { movies:movies },如果不展开,在模板中得到的就是{ movies:movies },但是使用展开在模板中最终获得的就是movies ;
根据对模板展开的理解,就方便使用js代码对数据进行处理:
在data中声明3个数据:
从服务器获取到数据之后对数据进行处理:
这时候data中声明的3个变量的数据格式如下:
inTheaters: { movies: movies, cagetoryTitle: cagetoryTitle}
comingSoon: { movies: movies, cagetoryTitle: cagetoryTitle}
top250: { movies: movies, cagetoryTitle: cagetoryTitle}
这个3个数据在页面中展开使用:
这样原始不同的3种数据传递到模板中可以取同一个变量值进行数据绑定:
后续会将代码更新到码云中:代码在这里
4. request 400错误解决
如下的代码会报错400
但是如果加上header:
依然报错:400
最后解决:将json改为xml,就可以正常请求
5.动态设置导航栏标题
必须在onReady中设置: