CocosCreator报错Please change the definition of property '***' in class 'NewClass'. Since v1.1

问题背景:

  1. 项目中使用了cc.AudioClip来控制声音
  2. 网页中运行项目正常,只是爆出红色警告
  3. 脚本中定义正常,拖拽使用拖拽方法,项目中没有使用url

报错:
CocosCreator报错Please change the definition of property '***' in class 'NewClass'. Since v1.1_第1张图片
解决问题:
官网链接
CocosCreator报错Please change the definition of property '***' in class 'NewClass'. Since v1.1_第2张图片
emmm… 干的漂亮,那么看提示吧。

其他不需要动
修改

@property(cc.AudioClip)
errorSource: cc.AudioClip = null;

改为:

@property({ type: cc.AudioClip })
errorSource: cc.AudioClip = null;

==>完美运行,解决问题!

问题寻找原因,看property源代码:

	class NewScript extends cc.Component {
	    property({
	        type: cc.Node
	    })
	    targetNode1 = null;
		...
	    property(cc.SpriteFrame)
	    frame = null;
	}
	
	// above is equivalent to (上面的代码相当于):
	
	var NewScript = cc.Class({
	    properties: {
	        targetNode1: {
	            default: null,
	            type: cc.Node
	        },
			...
	        frame: {
	            default: null,
	            type: cc.SpriteFrame
	        },
	    }
	});

根据我目前的水平,看上面两种写法都是可以的并没有什么区别,不知是转换ts的问题还是什么问题,如果哪位大佬发现问题所在,欢迎留言告知,感激不尽!

你可能感兴趣的:(CocosCreator)