用户:
抬头就是你查看:87 回复:5 评论:10 创建时间:2023-05-15T15:36:38
async function npc_const(x, Radius, Hint, Color) {
world.querySelectorAll('*').forEach((e) => {
if (e.id == x) {
let c;
Color == 'red' ? c = new Box3RGBColor(1, 0, 0) : null;
Color == 'green' ? c = new Box3RGBColor(0, 1, 0) : null;
Color == 'blue' ? c = new Box3RGBColor(0, 0, 1) : null;
Color == 'yellow' ? c = new Box3RGBColor(1, 1, 0) : null;
Color == 'cyan' ? c = new Box3RGBColor(0, 1, 1) : null;
Color == 'pink' ? c = new Box3RGBColor(1, 0, 1) : null;
Color == 'black' ? c = new Box3RGBColor(0, 0, 0) : null;
Color == 'white' ? c = new Box3RGBColor(1, 1, 1) : null;
e.enableInteract = true;
e.interactRadius = Radius;
e.interactHint = Hint;
e.interactColor = c;
}
})
};
求求啦。。。。
1.查找实体直接用选择器就可以
2.不要用三目代替条件分支,三目只能用于静态返回
3.检查一下你传入的参数是否有问题
点赞0
评论
谢谢,选择器是?(最近发烧,脑子不好使)
看API啊(建议社区版或ts版,不要看官方那个)
官方那个不能看,一看就会被喵,比如:if(!a.value || .....){return}...
三目那样写应该是可以的
最好是用对象实现
e但是不规范(?)
Chengxuyee_已退我把这段代码喂给chatgpt,他是这么说的
使用 world.querySelectorAll('*') 选择器查询所有元素时,可能会导致性能问题,因为它会遍历整个文档。如果你只想选择特定类型的元素,最好指定更具体的选择器。
在条件语句中使用了比较运算符 ==,但对于字符串比较,最好使用严格相等运算符 ===,以避免类型转换错误。可以使用 switch 语句来简化多个条件的判断。
修复后的代码如下:
javascript<button class="flex ml-auto gap-2">Copy code</button>async function npc_const(x, Radius, Hint, Color) { const elements = world.querySelectorAll('your-selector'); // 替换 'your-selector' 为要选择的特定元素类型的选择器 elements.forEach((e) => { if (e.id === x) { let c; switch (Color) { case 'red': c = new Box3RGBColor(1, 0, 0); break; case 'green': c = new Box3RGBColor(0, 1, 0); break; case 'blue': c = new Box3RGBColor(0, 0, 1); break; case 'yellow': c = new Box3RGBColor(1, 1, 0); break; case 'cyan': c = new Box3RGBColor(0, 1, 1); break; case 'pink': c = new Box3RGBColor(1, 0, 1); break; case 'black': c = new Box3RGBColor(0, 0, 0); break; case 'white': c = new Box3RGBColor(1, 1, 1); break; default: c = new Box3RGBColor(0, 0, 0); // 默认为黑色 } e.enableInteract = true; e.interactRadius = Radius; e.interactHint = Hint; e.interactColor = c; } }); 点赞0
评论
chatgpt以为这是前端的js啊()
人家把gpt网页的那个复制代码的按钮粘进来了
6.
可它就是以为这是前端啊()《文档》《元素》