diff --git a/src/Common/eval.ts b/src/Common/eval.ts index 9f08ac0ee..576be0e9d 100644 --- a/src/Common/eval.ts +++ b/src/Common/eval.ts @@ -84,10 +84,13 @@ export function eval2(expr: string, params?: {}, defaultParam?: string): number let result = eval(code); if (typeof result === "function") - return result(); + result = result(); if (typeof result === "bigint") - return Number(result);//防止bigint乱入 + result = Number(result);//防止bigint乱入 + + if (typeof result !== "number") + throw "计算结果不是实数!"; return result; } diff --git a/src/UI/Components/RightPanel/TemplateParamPanel.tsx b/src/UI/Components/RightPanel/TemplateParamPanel.tsx index a1ba3f264..c5719d626 100644 --- a/src/UI/Components/RightPanel/TemplateParamPanel.tsx +++ b/src/UI/Components/RightPanel/TemplateParamPanel.tsx @@ -706,7 +706,7 @@ export class TemplateParamDetail extends React.Component<{}> }} title={par.name} >{par.name} - {FixedNotZero(par.value, 2)} + {typeof par.value === "number" ? FixedNotZero(par.value, 2) : par.value} {par.description} { par.type === TemplateParamType.Material ?