//(cc.component内)
uploadNode!:cc.Node;
//响应点击的Node
virtualInputTag! : HTMLInputElement;
//在cc.component内建立一个inputElement
start(){
this.virtualInputTag = document.createElement(input);
this.virtualInputTag.type = file;
this.virtualInputTag.accept = image/jpeg,image/png;
this.virtualInputTag.multiple = false;
//实例化标签,设置inputElement的type为file,即文件上传
//设置限定的文件类型,是否允许多选等
//详见 https://developer.mozilla.org/zh-CN/docs/Web/HTML/Element/Input
this.uploadNode.on(cc.Node.EventType.TOUCH_START, () => {
this.virtualInputTag.click();
})
//将input的点击事件绑定到Node点击上
const pageRef = this;
this.virtualInputTag.onchange = async () => {
//定义input内容改变时(即用户进行上传操作)的回调
const _files = pageRef.virtualInputTag.files;
//得到用户选择的本地文件列表,为FileList类型
//可用数组下标获取单个文件,为File类型
//do something
}
}