@GhostZ said in не получается с модуля почты получить письма с hotmail:
@FastSpace, ну меня по этому поводу никто и не спрашивал, а на добавление и тестирование нужно время
а по моему просили что-то такое https://community.bablosoft.com/post/148369
Наконец-то я понял причину бага. Долго думал, что же не так, и что возможно меня глючит. Ошибка возникла еще пол года назад, я даже писал на форуме, но мне не ответили, а тему ту я не нашел. Поэтому создал новую.
Возникала такая ошибка в скрипте:
1 - TypeError: Result of expression 'f' [] is not a function. Line number:353 During execution of script
По номеру строки в скрипте ничего особенного, т.к. сама ошибка в другом месте.
В проекте добавлена функция login для авторизации на сайте. Ошибку заметил, когда при использовании прокси ошибка возникала, но стоило удалить блок с использованием прокси, как все работало.
Часть кода из блока прокси
var login = VAR_PROXY_LOGIN
Код вызова функции и сама функция:
_call(login,null)!
function login()
{
...
}
Можно использовать переменную proxy_login при генерации шаблона. А то так и психикой поехать недолго) Если не знать причину. Изначально вообще думал, что конфликт с базой данных, где так же было поле login
Еще самое замечательное, что при изменении переменной в коде скрипта - изменения не сохраняются. После любого изменения в режиме записи все возвращается.
@blackhacker Много в каких темах уже поднимался данный момент. Я всегда к переменным добавляю "_". Что бы 100% имя было уникально.
А вообще хорошо было бы, если BAS выдавал ошибку на этот счёт, типа Conflicting Variable Names
@Fox said in Конфликт имен переменных с именами функций:
А вообще хорошо было бы, если BAS выдавал ошибку на этот счёт, типа Conflicting Variable Names
А если нужно намеренно заменить старую переменную? Но вариант в стандартных шаблонах использовать добавление к переменным (например proxy_login вместо login) подошел бы. Уже сделано так, что к переменной добавляется VAR_, но вот с такими переменными почему-то не сделали.
@blackhacker Я в смысле если в проекте есть имя переменной, которое совпадает с именем функции.
@UA said in Конфликт имен переменных с именами функций:
Можно словить ещё один баг, если начинать названия функций с цифр. Надо бы поправить это.
SyntaxError: Parse error
По моему это и не баг, а правило именования, имя переменной или функции, не может начинаться с цифры) , это правило для всех языков программирования.
@UA said in Конфликт имен переменных с именами функций:
@santilo, это понятно. Но можно ведь "пофиксить" это запретом на ввод цифр в начале названия? Думаю, вполне :)
Этого я не знаю, но я думаю тебе не принципиально ведь начинать именование с цифры, поставь ее в конец, и проблема решена)
@blackhacker Да, я сейчас думаю над алгоритмом, как это можно исправить.
Но по умолчанию БАС создает переменные вместе с VAR_, поэтому у большинства пользователей проблем быть не должно.
В данной версии можно словить баг только назвав функцию как какую-то из апи, или используя выполнить код.
Еще самое замечательное, что при изменении переменной в коде скрипта - изменения не сохраняются. После любого изменения в режиме записи все возвращается.
При смене переменной в код скрипта, он выполняется с новой переменной, а вот редактор воспринимает старое значение, так как все данные для него хранятся в комментарии начинающемся с Dat:, а его вы не меняете.