Переменные в асинхронных функциях

Поддержка
  • @yteyyy Нашел способ как сделать через глобальные переменные, но интересно как передавать параметры в функцию, потыкался в BASe, вообще не понял как они работают...

  • На просторах Ютуба тоже особо ничего нет современного, BAS уже поменялся

  • @princes_java , я сам новичок, но попробую ответить:
    у функции установить входящий параметр (например ссылку как строку) d9344f13-7f81-469f-8451-8f6b36e46471-image.png
    при вызове асинхронки передать ему переменную в качестве параметра.
    надеюсь я правильно понял проблему

  • @Mef67 да. все верно)

  • @Mef67 @yteyyy Так-так, сейчас пробну обязательно, но я долго сегодня искал как переменную туда добавить, в параметр именно, еще вот немного входных данных: основной скрипт у меня составлен в Main, грубо говоря, для меня - моя основная функция Main и она по пути еще вызывает асинхронно другие, может быть стоит основной скрипт тоже сделать в отдельную функцию? Это как-то поможет, потому что у Main даже нельзя параметры редактировать, к примеру

  • @Mef67 Единственное, как передать переменную в качестве параметра? Там не высвечивается черное поле с возможностью выбора переменных)

  • @princes_java said in Переменные в асинхронных функциях:

    @Mef67 Единственное, как передать переменную в качестве параметра? Там не высвечивается черное поле с возможностью выбора переменных)

    Доп поле будет в действии вызова функции

  • @Fox Получается я просто беру, копирую название моей переменной из основного скрипта, открываю редактировать функцию через менеджер функций, там добавляю параметр типа "строка" и в имя параметра вставляю имя моей переменной?

  • @princes_java said in Переменные в асинхронных функциях:

    @Fox Получается я просто беру, копирую название моей переменной из основного скрипта, открываю редактировать функцию через менеджер функций, там добавляю параметр типа "строка" и в имя параметра вставляю имя моей переменной?

    Перечитайте моё сообщение более внимательнее

  • @Fox @Mef67 @yteyyy Все, братья, разобрался как это работает, благодарю!

  • @Fox @Mef67 @yteyyy
    Нет друзья, рано обрадовался,в общем в функциях параметры установил, потом при вызове функции в эти параметры вставил мои переменные, но при запуске в этих переменных появляется null...

  • @princes_java said in Переменные в асинхронных функциях:

    но при запуске в этих переменных появляется null...

    Нужно обновить переменную и посмотреть ее содержание в испекторе (вроде так наывается) переменных перед вызовом асинх

  • @Mef67 в main функции в переменной правильный результат, в асинхронной функции идет сначала действие получить параметр - эта переменная, запускаю ее и в инспекторе null

  • @princes_java , в асинх при прописании входного параметра переменную для параметра надо выбрать из списка переменных

  • @princes_java said in Переменные в асинхронных функциях:

    @Mef67 в main функции в переменной правильный результат, в асинхронной функции идет сначала действие получить параметр - эта переменная, запускаю ее и в инспекторе null

    Нужно что бы тип данных совпадал. Какие данные вы передаёте в функцию?

  • @Fox В принимающих данные функциях на всякий случай везде установил StringOrExpression
    Передаются данные : отпечаток fingerprint и в другой переменной ссылка

  • @princes_java said in Переменные в асинхронных функциях:

    @Fox В принимающих данные функциях на всякий случай везде установил StringOrExpression
    Передаются данные : отпечаток fingerprint и в другой переменной ссылка

    Так будет долго.. Держите тестовый скрипт для изучения: 3062.xml

  • @Fox Принял, изучу

  • @Fox Вопрос с параметром решился только следующим образом:
    в переменную из основной функции помещается ссылка, в асинхронной как параметр выбирается эта переменная, получается параметр и, чтобы я мог далее загрузить эту ссылку необходимо с помощью модуля строка извлекать ссылку из переменной, полученной путем "получения параметра функции", я так и думал, что функция просто ее не видит в том виде, с которым она может работать.
    Теперь вопрос посерьезнее, а как правильно передать параметры отпечатка finger? наврятли просто получить данные в строку и передать в модуль применить отпечаток, главное чтобы отпечатки полностью совпадали влоть до значений canvas, несмотря на то, что загрузка страницы будет с разных браузеров

  • @princes_java said in Переменные в асинхронных функциях:

    @Fox Вопрос с параметром решился только следующим образом:
    в переменную из основной функции помещается ссылка, в асинхронной как параметр выбирается эта переменная, получается параметр и, чтобы я мог далее загрузить эту ссылку необходимо с помощью модуля строка извлекать ссылку из переменной, полученной путем "получения параметра функции", я так и думал, что функция просто ее не видит в том виде, с которым она может работать.
    Теперь вопрос посерьезнее, а как правильно передать параметры отпечатка finger? наврятли просто получить данные в строку и передать в модуль применить отпечаток, главное чтобы отпечатки полностью совпадали влоть до значений canvas, несмотря на то, что загрузка страницы будет с разных браузеров

    Какие то страсти вы рассказываете, строку передаёте в аргумент функции, в функции получаете значение из аргумента, всё