Создание ресурса без перезапуска

Запросы функционала
  • Доброго времени. Так как в моем случае использования софта это небольшие проекты для экономии времени (не выгодно писать на яп), то тз заранее не делаю и не прорабатываю интерфейс. И вот в процессе вдохновения появляется необходимость в новом ресурсе, а чтоб им воспользоваться приходится делать перезапуск проекта. Сброс всех данных и выполнение до нужного момента, чтоб получить простейшее значение, хотя аналогичное действие но без добавления в интерфейс можно сделать с помощью действия вызывает у меня замешательство, хотя догадываюсь в причинах. Не спорю что можно обойтись без этого, прописав вручную название ресурса и сравнения с будущими значениями, если они необходимы, а протестировать уже в момент, когда перезапуск будет необходим, но юзабилити

  • @artemkachesov, модуль "Ресурсы"
    494737e5-4d34-4488-ba91-f576f6829583-image.png

    Или с помощью API:

    @support said in Проверить существование в ресурсе, удаление по значению:

    Улучшено старое апи для работы с ресурсами.
    RMap("ИМЯ РЕСУРСА") возвращает объект, который имеет несколько полезных методов:

    //Возвращает количество элементов в ресурсе.
    length()
    
    //Получает элемент по индексу.
    at(index)
    
    //Изменяет элемент ресурса с заданным индексом.
    set(index, value)
    
    //Поиск элемента, возвращает найденный индекс или -1.
    indexOf(value)
    
    //Удалить элемент по индексу.
    remove(index)
    
    //Добавить новый элемент в ресурс.
    insert(value)
    
    //Синхронизировать ресурс, для файла - поместить все элементы ресурса в файл.
    sync()
    
    //Получить несколько разных случайных элемента из ресурса. Работает очень быстро.
    random(size)
    
    //Вернуть список, который содержит все элементы из ресурса.
    toList()
    
    //Подгрузить ресурс из файла.
    reload()
    

    Простой пример использования, вывести все элементы ресурса:

    var lines = RMap("lines")
    for(var i = 0;i<lines.length();i++)
        log(lines.at(i))
    

    Проверить, существует ли строка в ресурсе:

    var index = lines.indexOf("account1")
    if(index >= 0)
       log("Строка существует")
    else
       log("Строка не существует")
    

    Удалить элемент ресурса по значению

    var index = lines.indexOf("account1")
    lines.remove(index)
    

    Удалить элемент ресурса по значению и записать изменения в файл.

    var index = lines.indexOf("account1")
    lines.remove(index)
    lines.sync()
    

    Новое апи будет доступно в следующем билде.
    Модуль ресурсы тоже будет обновлен, но вместе с интерактивной документацией.

  • @GhostZ возможно я не явно выразился, но имелось ввиду создание ресурса доступного из интерфейса скрипта. О возможности создать ресурс действиями я знаю и указал это, но он не будет доступен из интерфейса

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

  • @tet-vivi разве? Проверю вечерком, благодарю..

  • @artemkachesov указывать нужно вручную. то есть самому вписывать {{name}} в списке выбора появится только при перезагрузке

  • @tet-vivi итого имеем возможность создать ресурс в интерфейсе во время записи, но без возможности использовать, и имеем возможность создать ресурс действием и использовать, но не можем поместить его в интерфейс. Объединить бы эти механики.

  • 2 Votes
    10 Posts
    1591 Views
  • 0 Votes
    2 Posts
    986 Views
  • 0 Votes
    2 Posts
    1161 Views
  • 0 Votes
    20 Posts
    7286 Views
  • 0 Votes
    5 Posts
    2067 Views