Как использовать массивы в приложениях
  • 23 Jan 2025
  • 4 Минуты для чтения
  • Авторы

Как использовать массивы в приложениях


Вводный текст

Обзор

Вот как хранить данные в массиве в Tulip и перемещать значения из одного типа данных в другой.

В этой статье вы узнаете...

  • Как создавать и использовать массивы
  • Как изменять массивы в редакторе триггеров
  • Использование split string для превращения вывода функции коннектора в массив

Массивы и объекты - это две популярные структуры данных, которые используются во многих языках программирования. Tulip использует эти структуры данных в двух частях платформы:

  1. Переменные - для хранения нескольких точек данных, связанных с одной переменной.
  2. Коннекторы - для передачи вывода функции коннектора в переменную.

Массивы могут быть созданы:

  1. В редакторе триггеров (вручную)
  2. В редакторе выражений (вручную)
  3. В представлении сводки переменных (показано ниже) (вручную).
  4. Сохраняя вывод ввода Multiselect.
  5. При сохранении вывода функции SQL-коннектора, возвращающей несколько строк, или HTTP-коннектора с массивом в возвращаемом JSON (автоматически).

Создание массивов

В редакторе триггеров

Вы можете создать массив с помощью действия "Push onto Array".

  • "Массивы" "Push Onto Array" данные: "Static Value" "text" "text" array: (создайте массив здесь)

В редакторе выражений

Вы можете создать новый массив с помощью действия "Манипуляция данными" "Сохранить". Например:

  • "Манипуляция данными" "Хранить" data: "Expression" "[1,2,3]" location: "test_array"

Каждый массив может иметь только один тип значений, то есть строки или целые числа.

В представлении "Сводка переменных

Перейдите к представлению Variable Summary View на вкладке "App" боковой панели, затем создайте новую переменную в верхней части модального окна:

Манипулирование массивами

Вы можете создавать массивы и манипулировать ими в редакторе триггеров. В операторе "Then" нажмите "Добавить новое действие", а затем выберите опцию "Массивы".

В следующем выпадающем списке вы увидите различные методы работы с массивами. Они соответствуют методам массивов в JavaScript, поэтому ознакомьтесь с этим руководством по методам массивов, если вам нужны дополнительные пояснения.

Доступные методы массива включают в себя:

  1. Очистить массив
  2. Конкатенация массивов
  3. Получить из индекса в массиве
  4. Получить длину массива
  5. Вставить по индексу в массив
  6. Присоединиться к строке
  7. Вытащить из массива
  8. Вставить в массив
  9. Удалить и сохранить элемент по индексу в массиве
  10. Удалить по индексу в массиве
  11. Установить индекс в массиве
  12. Суммировать массив
  13. Поменять элементы в массиве местами

В зависимости от вашего выбора в этом выпадающем списке, в остальных полях вы сможете выбрать, с каким массивом вы хотите работать, какой индекс вы хотите изменить, и какое новое значение вы устанавливаете.

  • "Массивы" "Установить индекс в массиве" данные: "Static Value" "number" "90" array: "test_a" index: "Static Value" "integer" "0"

В приведенном выше примере вы изменяете значение с индексом 0 в массиве "test_a" на значение 90.

  • "Массивы" "Получить из индекса в массиве" array: "Переменная" "test_a" индекс: "Static Value" "integer" "0" store in variable: "test_vari"

В приведенном выше примере вы получаете значение с индексом 0 из массива под названием "test_a" и сохраняете его в переменной под названием "test_vari".

Поиск в массивах

Допустим, вы хотите использовать виджет multiselect, чтобы позволить оператору вводить несколько типов дефектов одного продукта. Затем, в зависимости от того, какие дефекты он вводит, вы хотите отправить его на определенный набор этапов доработки.

Форма multiselect автоматически сохраняет значения в массиве. Поэтому вам нужно найти в этом массиве определенное значение, а затем отправить оператора на определенный этап.

Для этого можно использовать триггерное действие "Join To String". Оно объединит все элементы массива в одну строку и сохранит ее в отдельной переменной. Затем в отдельном триггере можно использовать оператор "Если", чтобы проверить, содержит ли эта строка определенное значение.

Элементы массива могут быть разделены любой строкой по вашему выбору. Большинство пользователей Tulip предпочитают запятую (,).

Вот пример объединения всех элементов массива в строку:

  • "Arrays" "Join To String" join: "defect types"
  • с разделителем: "Static Value" "text" ","
  • сохранить в: "defect_types_joined"

Вот второй триггер, который вы будете использовать для поиска в этой новой строке определенного значения:

IF

  • "Переменная" "defect_types_joined" "Contains" "Static Value" "text" "chip"

Использование Split String для создания массивов

Исходя из всего, что было рассмотрено до сих пор, было бы очень сложно получить вывод некоторых типов функций соединителей в массив. Чтобы решить эту проблему, можно использовать split string.

Если вы хотите подготовить вывод функции коннектора для хранения в массиве, вам нужно добавить общий символ между каждым элементом данных. Общие примеры включают:

  • точка с запятой (;)
  • Запятая (,)
  • символ новой строки ("\n").

Допустим, у вас есть ряд точек данных, которые вы хотите сохранить в массиве. В SQL-запросе или HTTP GET-запросе вы сначала захотите объединить их в одну строку, если они еще не хранятся в объекте.

Вот пример:

7989;43f3;3e3;f34;f;34;3

Общим разделителем является точка с запятой.

В редакторе триггеров используйте опцию "Разделить строку", чтобы преобразовать эту строку в массив.

Сначала выберите переменную, которую нужно разделить. В данном случае она называется "q".

Затем добавьте разделитель.

И наконец, выберите переменную, в которой будет храниться массив.

  • "Split String" split: "Переменная" "q" by: "Статическое значение" "text" ";" сохранить в: "w"

Отображение переменных массива

Если вы хотите убедиться, что все работает, добавьте в шаг текст переменной. Затем выберите переменную, в которой хранится массив.

Наконец, откройте Tulip Player и посмотрите, все ли элементы массива отображаются в виде маркированного списка. Возможно, вам придется расширить текстовое поле, чтобы учесть количество элементов в массиве.

Если вы возвращаете массив данных одного типа из HTTP-коннекторов (текст, булевы, целые числа и т. д.), то на выходе вы получите маркированный список, как показано в разделе выше.

Отображение массивов из функций SQL и HTTP-коннекторов

Когда вы возвращаете массив объектов из функции HTTP-коннектора или несколько строк из функции SQL-коннектора, маркированный список не будет идеальным отображением.

Вместо этого обратитесь к этому отдельному руководству, чтобы узнать, как превратить вывод функции коннектора в интерактивный или статический список.

Просмотр всех переменных массива в приложении

Для того чтобы манипулировать структурой данных, она должна быть сохранена в виде переменной. Вы можете увидеть существующие переменные, войдя в боковую панель редактора приложений и выбрав символ сигмы рядом с "Переменные" на вкладке "Приложение".

Массивы будут отображаться как "Массив" в столбце "Тип", в зависимости от того, какие значения они содержат. Вы также можете создать значения по умолчанию для индексов массива.

Дальнейшее чтение


Вы нашли то, что искали?

Вы также можете зайти на community.tulip.co, чтобы задать свой вопрос или узнать, сталкивались ли другие с подобным вопросом!


Была ли эта статья полезной?