那大哥你试试。
谢谢反馈,我试试快速保存能不能重现
再来一个小问题,我代码比较奔放,有大量中文。但是现在有点辣眼睛,不知是否可以和VSCode一致。这个彩色中文有点刺眼。
VSCode如下
大佬插件如下
我已经改了Bold大小了。就是颜色不知咋改。
好,正则匹配问题
您可太优秀了~
大哥,不准鄙视,不管黑猫白猫,我宁愿数着钱笑,也不愿意守着代码规范哭。
谢谢
有个问题想问下不知能否解答
鼠标拖动资源时没放手通过 Editor.Selection.curSelection(‘node’) 获取不到当前拖动的node
有办法解决吗?
您这边是拖动的资源还是节点?
都一样,要放手后才能获取选中的资源
大佬,点选一个cc.Button节点,能否自动打开它的ClickEvent[0]对应的响应脚本,并定位到对应的响应函数附近?我个人认为这个是高频有用操作。
如果该节点同事也加入了自定义组件脚本,现状是会自动打开这个自定义组件脚本。和上面的设想冲突。
故可以考虑 alt + 点击触发或者右键菜单触发。
喝茶
感觉很少有人在编辑器里绑定事件函数
大佬,这拖拽问题涉及到Creator编辑器内部,个人真的没法解决,求指导
图片显示鼠标没有点击选取node前直接拖拽 Editor.Selection.curSelection(‘node’) == null
拽事件监听方法是这样写的
this.$editorB.addEventListener('drop',(e)=>{
// 鼠标直接拖拽时 nodeUuid == null, 需要点击一下Node再拖才能获取到 nodeUuid
let nodeUuid = Editor.Selection.curSelection(‘node’)
},false);
麻烦大佬解惑一下如何获得 拖拽的node对象uuid
可以告诉我 ui-node 控件是怎么实现获取当前拖拽的 node uuid的吗
我尝试去模拟实现
您好,我们这边的编辑器开发说这是正常情况。在编辑器中拖拽的状态不等同于选中,这时候拖拽结束后松开就是未选中了。
谢谢大佬解惑,刚刚顺着回调找到监听node拖拽事件的方法了
Electron.ipcRendere.on("editor:dragstart", (e, t) = >{
_dragging = !0,
_type = t.type,
_items = t.items,
_options = t.options
}),
更新了两点可以试试:
修复拖动需要点击一次的问题
代码变量颜色匹配中文
大神,你的修改生效了。
另外这个问题,我这加了点代码调试通过了,请大佬参考一下。
增加的代码在下面这个函数中
getJsFileList(node){
if(!node) {return []};
let list = [];
node.getComponents(cc.Component).forEach((v)=>{
if(v.__classname__ && v.__classname__.indexOf(".") == -1) list.push(v); //js脚本
});
{//打开cc.Button的响应脚本
let button = node.getComponent(cc.Button);
if(button && button.clickEvents && button.clickEvents.length)
{
for(let myeee of button.clickEvents)
{
if(!myeee)
continue;
let buttonTargetNode = myeee.target;
if(buttonTargetNode)
{
let comps = buttonTargetNode.getComponents(cc.Component);
if(comps && comps.length)
{
for(let comp of comps)
{
if(comp.__classname__ === myeee._componentName || comp.__classname__ === myeee.component)
{
if(comp.__classname__ && comp.__classname__.indexOf(".") == -1) list.push(comp);
}
}
}
}
}
}
}//end 打开cc.Button的响应脚本
return list;
},
可以,你都写的差不多了
老板,你这个TS按需import有点不如意。好像你有一个缓存列表,打开过才能记住和提示。
设定有两个目标
- 启动simple-code面板快(不能用那个js的全部导入配置,实在太慢了)
- TS能自动提示工程里面的没有打开过的TS类型。node_modules里面的不管。
为同时实现这两个目标,可以考虑和vscode的ts工程一样,导入es5.d.ts,dom.d.ts之类的之后,扫描Creator工程,凡是.d.ts和.ts的都自动加入列表,js的不管,也许就不会出现尴尬的不回提示导入用户自定义的TS类。