下划线变量会被序列化记录后导致修改赋值无效的bug(附重新步骤)

  • Creator 版本: 3.2.1

  • 目标平台:编辑器bug,应该和目标平台无关,目前就测试了chrome浏览器

  • 重现方式:

  1. 在A scene或者prefab上声明一个下划线变量
    @property({ type: CCInteger })
    private _test1 = 123
  1. 双击切换到另外一个scene或者prefab B
  2. 然后再双击切回A 此时如果按一下保存ctrl s, _test1 就会被序列化记录到A.scene或者A.prefab中,
    “_test1”: 123,
    后续你修改_test1的值,序列化记录的值都不会改变,比如你后面代码中改成了private _test1 = 567,你重复步骤2,步骤3是不会再触发序列化中的数值改变,就会导致游戏运行后读取的到的值还是123

触发条件是必须切一下当前场景再切回来然后按保存,不切的话,直接保存或者编译运行游戏都不会触发下划线变量进行序列化