在开发过程中,我们会将页面常用功能抽象为一个组件,这样既方便又可以避免代码冗余。小程序中也提供了自定义组件,了解Vue的伙伴们会发现其实和Vue的组件化很相似。这里用返回顶部功能来说说如何自定义组件,下面看demo效果:

                           
 
        效果:进入页面不显示图标,滚动后显示,回滚到顶部时图标消失。
        具体步骤:
              1.建立component/goTop文件夹,里面包含.wxml, .wxss, .js, .json四个文件,如下图所示:
                                 
         
               2.在.json文件中写入代码,如下图所示:
                          
              3.在.wxml文件中写入代码,如下图所示:
               
 
              4.在.wxss文件中写入代码,如下图所示:
                     
 
              5.在.js文件中写入代码,如下图所示:
         
 
             6.至此已经定义好了组件,接下来是在需要展示的页面写接入代码,我是在商品详情页里显示这个图标,所以需要到详情页的.json文件中写以下代码:
                      
              注: "go-top"是该页面的自定义组件标签,路径是根据文件夹设置而定。
              7.详情页的.wxml文件中写以下代码:
                       
              注:返回顶部图标通过滚动来判断是否显示,所以需要传入数据动态控制是否显示,"isShow"作为自定义组件的属性在第5步已经设置好,默认值为false,即打开详情页不显示返回顶部图标。"topFlag"是用来动态控制是否显示的属性,该属性在详情页的.js文件中体现,如第8步所示。
 
              8.详情页的.js文件中写以下代码:
                     
              当滚动时会改变"topFlag"值,自定义组件接收改变值后传入组件内部"isShow",组件内部通过wx:if="{{isShow}}"控制显示。组件内置的点击滑动返回顶部方法也在第5步已经设置好。
              常用功能通过自定义组件的方式可以在各处需要用到的地方引入即可。
 
 
          如需转载请注明出处:http://www.cnblogs.com/zishang91/p/8523573.html,以便有错误可以及时修改,若有错漏不足之处,请见谅并且指点,谢谢!!!
 
 
 
 

如何在小程序自定义组件和动态传入数据小demo的更多相关文章

  1. 微信小程序自定义组件——接受外部传入的样式类

    https://developers.weixin.qq.com/miniprogram/dev/framework/custom-component/wxml-wxss.html 外部样式类 有时, ...

  2. 微信小程序自定义组件,提示组件

    微信小程序自定义组件,这里列举了一个常用的提示自定义组件,调用自定义组件中的方法和字段.仅供参考和学习. 编写组件: 在根目录下添加“components”目录,然后像添加Page页面一样添加自定义组 ...

  3. 微信小程序自定义组件实现

    官方从 1.6.3 开始对于自定义组件这一块有了比较大的变动,首先比较明显的感觉就是文档比以前全多了,有木有!,现在小程序支持简洁的组件化编程,可以将页面内的功能模块抽象成自定义组件,以便在不同的页面 ...

  4. 微信小程序自定义组件

    要做自定义组件,我们先定一个小目标,比如说我们在小程序中实现一下 WEUI 中的弹窗组件,基本效果图如下. Step1 我们初始化一个小程序(本示例基础版本库为 1.7 ),删掉里面的示例代码,并新建 ...

  5. 小程序的组件插槽使用slot===以及小程序多个插槽使用方法 三步骤

    ===================== 小程序多个插槽使用方法 三步骤 小程序多个插槽第一步 小程序组件内使用多个插槽第二部 小程序使用多个插槽第三部

  6. 微信小程序自定义组件的使用以及调用自定义组件中的方法

    在写小程序的时候,有时候页面的内容过多,逻辑比较复杂,如果全部都写在一个页面的话,会比较繁杂,代码可读性比较差,也不易于后期代码维护,这时候可以把里面某部分功能抽出来,单独封装为一个组件,也就是通常说 ...

  7. 微信小程序自定义组件-下拉框

    这个是网址https://www.cnblogs.com/zjjDaily/p/9548433.html 微信小程序之自定义select下拉选项框组件 知识点:组件,animation,获取当前点击元 ...

  8. wx小程序自定义组件与页面之间参数传递

    在开发中,很多页面中会使用相同的组件,这时可以将具有相同信息的部分封装成一个组件,方便开发中调用.在调用中可能会涉及到数据的传递问题,例如页面与组件,组件与组件直接的数据传递. 首先看看页面与组件直接 ...

  9. 微信小程序自定义组件封装及父子间组件传值

    首先在我们可以直接写到需要的 page 中,然后再进行抽取组件,自定义组件建议 wxzx-xxx 命名 官网地址:https://developers.weixin.qq.com/miniprogra ...

随机推荐

  1. SqlParameter 操作 image 字段

    public static void AddEmployee( string lastName, string firstName, string title, DateTime hireDate, ...

  2. 166 Fraction to Recurring Decimal 分数到小数

    给定两个整数,分别表示分数的分子和分母,返回字符串格式的小数.如果小数部分为循环小数,则将重复部分括在括号内.例如,    给出 分子 = 1, 分母 = 2,返回 "0.5".  ...

  3. POJ1150he Last Non-zero Digit(组合)

    链接 题意从尾部找第一个非0的数 这样就可以考虑下怎样会形成0  这个都知道 只有因子2和因子5相遇会形成0 那这样可以先把所有的2和5先抽出来,这样就保证了其它的数相乘就不会再出现0了 这样就可以转 ...

  4. [转]在WIN7下安装运行mongodb

    本文转自:http://www.cnblogs.com/snake-hand/p/3172376.html 1).下载MongoDB http://downloads.mongodb.org/win3 ...

  5. JavaScript禁止键入非法值,只有这些才能被键入

    JavaScript禁止键入非法值,只有这些才能被键入(k==9)||(k==13)||(k==46)||(k==8)||(k==189)||(k==109)||(k==190)||(k==110)| ...

  6. 学JAVA第二十四天,Set集合与StringBuilder

    下面的内容需要慢慢看,因为,我的语言表达能力不是很好 首先说Set把,Set集合是一个无序且不允许重复的集合,而且查找效率也是快的可怕的. 但是,有些时候,我们必须要用储存多个相同的值时,Set也是可 ...

  7. Load average in Linux的精确含义

    Man 上的解释: load average System load averages is the average number of processes that are either in a ...

  8. codevs 1979 第K个数

     时间限制: 1 s  空间限制: 1000 KB  题目等级 : 黄金 Gold 题目描述 Description 给定一个长度为N(0<n<=10000)的序列,保证每一个序列中的数字 ...

  9. css-test

    transition-content See the Pen NLOgVR by nakata139@gmail.com (@deepblue1982) on CodePen.

  10. activitymq 集群构建

    测试zk是否正常 [root@node2 bin]# cd /zk/1/zookeeper-3.4.10/bin/ [root@node2 bin]# ./zkCli.sh -server 10.50 ...