本文档描述了n8n用户界面中的参数输入系统和资源定位器组件。这些是节点详情视图(NDV)的核心元素,使用户能够配置节点参数并从外部服务中选择资源。
有关节点详情视图本身的更多信息,请参阅节点详情视图(NDV)。
参数输入和资源定位器系统在n8n的工作流配置UI和节点执行之间提供了一个接口,使用户无需离开n8n界面即可配置节点选项和浏览远程资源(如文件、工作表、存储库)。
来源: cypress/e2e/26-resource-locator.cy.ts1-6 cypress/e2e/26-resource-locator.cy.ts17-30
参数输入系统提供了各种UI组件用于配置节点参数。这些组件会根据不同的数据类型和需求进行适应,为每种参数类型提供合适的界面。
来源: cypress/fixtures/Test_workflow_3.json23-63
参数输入根据节点要求处理各种数据类型和配置
| 输入类型 | 数据类型 | 组件 | 用途 |
|---|---|---|---|
| 文本 | 字符串 | 文本输入 (TextInput) | 节点名称、文本参数 |
| 数字 | 数字 | 数字输入 (NumberInput) | 计数、限制、阈值 |
| 布尔值 | 布尔值 | 切换按钮 (ToggleButton) | 启用/禁用功能 |
| 选项 | 枚举(Enum) | 下拉选择 (DropdownSelect) | 从预定义选项中选择 |
| 日期时间 (DateTime) | 日期 | 日期时间选择器 (DateTimePicker) | 调度时间、日期过滤器 |
| 代码 | 对象/数组 (Object/Array) | 代码编辑器 (CodeEditor) | JSON、SQL、HTML内容 |
| 表达式 | 任意 | 表达式编辑器 (ExpressionEditor) | 使用表达式的动态值 |
| 资源 | 字符串/对象 | 资源定位器 (ResourceLocator) | 外部资源选择 |
每个参数都在节点的描述中定义,具有以下属性:
name:参数标识符displayName:用户友好的标签type:数据类型default:默认值required:参数是否必需options:下拉选择的可用选项来源: cypress/fixtures/Test_workflow_3.json23-63
参数输入支持n8n表达式,用于基于工作流数据的动态配置
表达式允许参数:
$json语法引用上游节点的数据来源: cypress/fixtures/Test_workflow_3.json23-63
参数输入包含验证逻辑,以确保配置正确
验证失败时,会显示适当的错误消息以指导用户。
来源: cypress/fixtures/Test_workflow_3.json23-63
参数可以依赖于其他参数,从而创建层级关系
当一个被其他参数依赖的参数发生更改时,依赖的参数会被重置或相应更新。
来源: cypress/e2e/26-resource-locator.cy.ts74-81
资源定位器组件(RLC)是一个专门的参数输入,它帮助用户直接在n8n界面中浏览和选择第三方服务的外部资源(如Google Drive文档、GitHub存储库等)。
来源: cypress/e2e/26-resource-locator.cy.ts17-30 cypress/e2e/26-resource-locator.cy.ts74-81
资源定位器组件支持不同的操作模式,允许灵活地选择资源
MODE_SELECTOR_LIST)— 从外部服务检索并显示可用资源列表以供选择模式通过组件内的下拉菜单“模式选择器”进行选择。
来源: cypress/e2e/26-resource-locator.cy.ts10-11 cypress/e2e/26-resource-locator.cy.ts22-29
资源定位器与凭据系统紧密耦合,因为它需要有效的凭据才能从外部服务获取资源。
来源: cypress/e2e/26-resource-locator.cy.ts8-9 cypress/e2e/26-resource-locator.cy.ts32-48 cypress/e2e/26-resource-locator.cy.ts50-65 cypress/e2e/26-resource-locator.cy.ts67-72
资源定位器为不同场景提供清晰的错误消息
NO_CREDENTIALS_MESSAGE(“添加您的凭据”)INVALID_CREDENTIALS_MESSAGE(“请检查您的凭据”)错误消息通过resourceLocatorErrorMessage组件显示,指导用户解决配置问题。
来源: cypress/e2e/26-resource-locator.cy.ts8-9 cypress/e2e/26-resource-locator.cy.ts32-38 cypress/e2e/26-resource-locator.cy.ts50-65
资源定位器可以依赖于其他字段。当依赖字段更改时,资源定位器会重置以避免状态不一致。例如,在Google Sheets节点中,sheetName字段依赖于documentId字段——更改文档会重置工作表选择。
来源: cypress/e2e/26-resource-locator.cy.ts74-81
与其他组件不同,资源定位器即使在其他参数存在错误时也能独立加载选项。这使其在部分配置的节点中具有弹性。
例如,当节点的一个字段中存在无效表达式时,资源定位器仍然可以获取并显示其字段的选项,允许用户在不先修复所有错误的情况下配置节点的部分内容。
来源: cypress/e2e/26-resource-locator.cy.ts83-106
资源定位器和参数输入系统是n8n UI的核心组件,它们作为Vue.js组件实现,与n8n后端交互以获取资源、验证输入并将配置存储为工作流数据结构的一部分。
来源: cypress/e2e/26-resource-locator.cy.ts1-6
这些组件构成了n8n用户界面的关键部分,能够实现直观的工作流配置,同时抽象化了外部服务集成的复杂性。