當前位置: 首頁>>代碼示例>>TypeScript>>正文


TypeScript pluginConfigs.createNewPlugin函數代碼示例

本文整理匯總了TypeScript中src/dataLoaders/utils/pluginConfigs.createNewPlugin函數的典型用法代碼示例。如果您正苦於以下問題:TypeScript createNewPlugin函數的具體用法?TypeScript createNewPlugin怎麽用?TypeScript createNewPlugin使用的例子?那麽, 這裏精選的函數代碼示例或許可以為您提供幫助。


在下文中一共展示了createNewPlugin函數的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。

示例1: createNewPlugin

        telegrafPlugins: state.telegrafPlugins.map(tp => {
          if (tp.name === action.payload.pluginName) {
            const plugin = _.get(tp, 'plugin', createNewPlugin(tp.name))

            const config = _.get(
              plugin,
              ['config', action.payload.fieldName],
              []
            )

            const updatedConfigFieldValue: string[] = [
              ...config,
              action.payload.value,
            ]

            return {
              ...tp,
              plugin: updateConfigFields(
                plugin,
                action.payload.fieldName,
                updatedConfigFieldValue
              ),
            }
          }
          return tp
        }),
開發者ID:sebito91,項目名稱:influxdb,代碼行數:26,代碼來源:dataLoaders.ts

示例2: getConfigFields

        telegrafPlugins: state.telegrafPlugins.map(tp => {
          const name = _.get(tp, 'name')
          if (name === action.payload.telegrafPlugin) {
            const configFields = getConfigFields(name)
            if (!configFields) {
              return {...tp, configured: ConfigurationState.Configured}
            }

            const plugin = getDeep<Plugin>(tp, 'plugin', createNewPlugin(name))
            const config = _.get(plugin, 'config', {})

            let isValidConfig = true

            Object.entries(configFields).forEach(
              ([fieldName, {type: fieldType, isRequired}]) => {
                if (isRequired) {
                  const fieldValue = config[fieldName]

                  switch (fieldType) {
                    case ConfigFieldType.Uri:
                      isValidConfig = validateURI(fieldValue as string)
                      break
                    case ConfigFieldType.String:
                      isValidConfig = (fieldValue as string) !== ''
                      break
                    case ConfigFieldType.StringArray:
                      isValidConfig = !!(fieldValue as string[]).length
                      break
                    case ConfigFieldType.UriArray:
                      isValidConfig =
                        !!(fieldValue as string[]).length &&
                        !fieldValue.find(uri => !validateURI(uri))
                      break
                  }
                }
              }
            )

            if (!isValidConfig || _.isEmpty(config)) {
              return {
                ...tp,
                configured: ConfigurationState.InvalidConfiguration,
              }
            } else {
              return {...tp, configured: ConfigurationState.Configured}
            }
          }

          return {...tp}
        }),
開發者ID:sebito91,項目名稱:influxdb,代碼行數:50,代碼來源:dataLoaders.ts


注:本文中的src/dataLoaders/utils/pluginConfigs.createNewPlugin函數示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。