This commit is contained in:
2025-04-10 02:06:56 +08:00
parent 90317d2b4b
commit f99a1f05d4
4 changed files with 759 additions and 1294 deletions
+5 -55
View File
@@ -13,7 +13,7 @@ export function SimpleCodeEditor({
language = 'javascript',
onChange
}: SimpleCodeEditorProps) {
const [code, setCode] = useState(initialValue || getDefaultCode(language));
const [code, setCode] = useState(initialValue);
const [copySuccess, setCopySuccess] = useState(false);
// 复制代码到剪贴板
@@ -33,62 +33,12 @@ export function SimpleCodeEditor({
}
};
// 初始示例代码
function getDefaultCode(lang: string) {
if (lang === 'javascript') {
return `// 示例代码
function checkRule(data) {
// data 包含抽取的字段
try {
// 在此编写检查逻辑
if (data.fieldName && condition) {
return {
pass: true,
message: "检查通过"
};
} else {
return {
pass: false,
message: "检查不通过,原因:..."
};
}
} catch (error) {
return {
pass: false,
message: "执行出错:" + error.message
};
}
}`;
} else {
return `# 示例代码
def check_rule(data):
# data 包含抽取的字段
try:
# 在此编写检查逻辑
if 'field_name' in data and condition:
return {
'pass': True,
'message': "检查通过"
}
else:
return {
'pass': False,
'message': "检查不通过,原因:..."
}
except Exception as error:
return {
'pass': False,
'message': f"执行出错:{str(error)}"
}`;
}
}
// 当语言变化时更新代码
// 更新初始值
useEffect(() => {
if (!initialValue) {
setCode(getDefaultCode(language));
if (initialValue !== undefined) {
setCode(initialValue);
}
}, [language, initialValue]);
}, [initialValue]);
return (
<div>