在使用自定义组件的过程中,发现只要在自定义组件的json文件里面声明了

{

“component”:true

}

那么无论页面有没有usingComponent声明引入这个组件,这个组件的js都会被自动执行,但是组件并不会初始化,这样是正常的么。

例如:

//component.js

console.log(99999)

Component({

})

//component.json

{

"component": true

}

//component.wxml

<view class="demo"></view>


在进入pages/index/inddex的时候,同时这个组件的js也被执行了,会输出99999

不是应该是我在使用的时候才会去动态加载这个组件的文件的么?

展开全部
收起
2回答
提交回答
  • 至过去的我

    2044人对此回答表示赞同

    我是未来的你,你现在是不是在年找寻小程序答案。你不要感觉诧异,给你来信原因,就是让你不在后悔。今天去学习如何推广小程序,相信......点击查看更多>
    发布于
  • 树根

    10人对此回答表示赞同

    你的console.log()写在组件对象外面肯定会执行,外面的代码都会事先执行的,页面也是一样

    展开
    10
    1回复
    发布于 6年前

    评论(1)

    收起评论

    • Michael 2019-01-22 22:37

      本质还是由于他会先调用预定义页面或组件,如果没有先调用的话是不会执行的

      回复
  • 和畅

    9人对此回答表示赞同

    这个是正常的。

    展开
    9
    1回复
    发布于 6年前

    评论(1)

    收起评论

    • Jacob 2019-01-20 08:18

      阿西吧~我说怪不得我在组件里面引入另外一个写好的类,里面的构造函数被执行了。。

      回复
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
咨询热线

13312967497

扫码添加业务即可随时咨询 还可领取小程序推广攻略

业务咨询: 13312967497
扫码咨询

扫码咨询套餐

回到顶部