]> acesimba.cloud Git - StationBuilder.git/commitdiff
设备模版:图片框改正方形 + 修复创建无响应
authorwang.yu <wang.yu@advantech.com>
Wed, 19 Aug 2026 03:44:39 +0000 (11:44 +0800)
committerwang.yu <wang.yu@advantech.com>
Wed, 19 Aug 2026 03:44:39 +0000 (11:44 +0800)
- app/globals.css: .device-img-field 固定 160x160 正方形,img 充满方框
- db-sidecar.mjs: 路由级 catch 在响应未结束时回 500,避免 async 处理器
  首个 await 后抛错导致客户端永久挂起(表现为点创建没反应)

app/globals.css
db-sidecar.mjs

index fd6cc8ee3519b9ae1f14b566daf1a008e3ca47f2..046b344dae03bc68fcb136aa1ad8bf6017de8b17 100644 (file)
 .picker-doms{margin-left:auto;color:#888;font-size:10px;max-width:42%;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
 /* ===== 设备模版:图片与采集点编辑 ===== */
 .device-list{display:grid;grid-template-columns:1fr;gap:14px;padding:4px 0}
-.device-img-field{margin-top:6px;border:1px dashed #c4ccd2;border-radius:6px;min-height:170px;background:#f7f9fa;display:flex;align-items:center;justify-content:center;cursor:pointer;overflow:hidden;position:relative}
+.device-img-field{margin-top:6px;border:1px dashed #c4ccd2;border-radius:6px;width:160px;height:160px;background:#f7f9fa;display:flex;align-items:center;justify-content:center;cursor:pointer;overflow:hidden;position:relative}
 .device-img-field:hover{border-color:var(--blue);background:#f0f8fc}
-.device-img-field img{width:100%;height:170px;object-fit:cover;display:block}
-.device-img-field .device-img-empty{color:#9aa1a5;font-size:12px}
+.device-img-field img{width:100%;height:100%;object-fit:cover;display:block}
+.device-img-field .device-img-empty{color:#9aa1a5;font-size:12px;text-align:center;padding:0 8px}
 .cp-list-head{display:flex;align-items:center;justify-content:space-between;margin:10px 0 6px}
 .cp-list-head span{display:flex;gap:12px}
 .cp-editor td{padding:4px 6px;vertical-align:middle}
index 0df66c07da06c962a8c1b49c3a48eca59cebc00d..7ff5303f20516c9027f5be7bfe097ae8c250716c 100644 (file)
@@ -2194,7 +2194,11 @@ const server = http.createServer((req, res) => {
   res.setHeader("Access-Control-Allow-Methods", "GET, POST, PUT, DELETE, OPTIONS");
   res.setHeader("Access-Control-Allow-Headers", "Content-Type");
   if (req.method === "OPTIONS") return res.writeHead(204).end();
-  route(req, res).catch(e => console.error("[db-sidecar route error]", e));
+  route(req, res).catch(e => {
+    console.error("[db-sidecar route error]", e);
+    try { if (!res.headersSent && !res.writableEnded) respondError(res, 500, (e && e.message) || "internal error"); }
+    catch (_) {}
+  });
 });
 
 // 兜底:任何未捕获异常 / 未处理的 Promise 拒绝都不应让旁路服务退出