页面跳转
在小程序的第一个页面上,保留了一个用于跳转到其他页面的按钮。跳入微信小程序的主要方法有三种:
-wx。()
-wx。()
-wx。()
wx.switchTab({ url: '/index' })
可以正确编写路径,区分绝对路径和相对路径:
绝对路径:通常以/开头,表示从根目录进行搜索
相对路径:相对于当前页面,每当您使用../时,它就会跳上一级
第一种和第二种方法之间的主要区别是:前一种保留当前页面(父页面,()方法),跳转到其他页面(子页面),最后可以返回到当前页面(父页面) ),两个页面之间存在父子关系;后者关闭当前页面(执行()方法),跳转到其他页面,并且无法返回。这两个页面是平行关系。
第三种更为特殊。这种跳转是跳转到该页面并关闭所有其他非页面。以上两种跳转方法均无效。要从的页面跳转到非的页面,可以使用以上两种方法。
轮播组件
通常与-item一起使用。前者是整个轮播的容器,而后者是单个轮播子项目的容器。它仅在前者内部使用。默认的和是和,它只是一个容器。它没有其他作用,但是如果丢失,它就不会起作用。因此,应将所有-item应用于父节点。
我们不能认为仅图片可以放在-item中,而其他内容(如文本)也可以放置;来实现其他服务,例如弹幕转盘。
通过设置='true'和-dots ='true'指示器的显示来设置轮播滚动的方向
在轮播图片中,图片的实际尺寸由标签控制,标签默认情况下具有宽度和高度。
事件绑定
通常有两种类型的事件:
冒泡事件:单击子节点,父节点上的事件也将被执行;但是单击父节点上的事件,子节点上的事件将不会在绑定开始时执行:表示冒泡,后跟事件名称
非气泡事件:触发组件上的事件时,该事件将不会传递到父节点。通常添加在子节点上方。开头:不冒泡微信小程序开发实现网页的跳转,后跟事件名称
我是事件2 我是事件1 onBind: function (event) { console.log("事件1执行了") }, onbind: function (event) { console.log("事件2执行了") }
当我单击事件1而不单击事件2时,也会触发事件2,这正在冒泡。但是当我单击事件1时,仅触发了事件1的功能,而触发了事件2的功能。不会被执行。还有另一种方法:轻按的声明事件的方法。
页面配置
如前所述,app.json用于配置某些小型程序项目的全局配置。您可以在特定页面下的json文件中分别配置页面所需的配置。
它是在全局app.json中配置的。它与需要在全局app.json中注册的项目页面相同。它也是里面的一个属性。根据数组内部的顺序,列表数组的顶部至少配置2个,最多配置5个。
"tabBar": { "position":"top", // 按钮的位置,默认为bottom,设置为top的时候,icon设置无效 "borderStyle": "white", // tabBar的颜色 "list": [ { "pagePath": "pages/posts/post", // 页面路径,必须先在pages属性中定义 "text": "阅读", "iconPath": "images/tab/yuedu.png", // 未选中的图片 "selectedIconPath": "images/tab/yuedu_hl.png" // 选中的图片 }, { "pagePath": "pages/movies/movies", "text": "电影", "iconPath": "images/tab/dianying.png", "selectedIconPath": "images/tab/dianying_hl.png" } ] }
在全局app.json中配置它,然后在项目启动时,默认情况下在底部有一个字段开关;
当然,您也可以更改其位置以使其显示在顶部。当它显示在顶部时,该按钮的图像将无效:
数据绑定
小程序中没有dom节点的概念,并且不能通过操纵DOM节点将其用于向页面添加数据。相反,小型程序使用数据绑定来实现数据优先级。这样做的好处是不需要操纵DOM,从而减少了页面加载时间。
{{date}} Page({ // 页面的初始数据 data: { date:"我是事件1" } }
以上方法是数据绑定。在相应页面JS文件的page()的data属性中,以键值对的形式填写页面所需的数据,然后使用{{key}}绑定数据。当然,您可以将多个数据绑定到一个位置,就像{{key1}} {{key2}}一样。将数据绑定到标签的属性时,需要使用“ {{key}}”
{{date}}{{title}} Page({ data: { date:'stp 17', title:' hi icessun' }, onLoad: function (options) { var dates={ date:'stp 18', title:'icessun' } this.setData(dates) } }
当然,不可能直接在数据中写入数据。这些数据是从服务器获得的。页面初始化后,它将向服务器发送请求。处理完数据后,传递this。()方法将数据绑定到页面。在this。()方法中接收到的参数等效于首先在data属性中写入参数,然后通过data属性中的键值将其绑定到页面。当然,相同的属性名称(键值)将被覆盖