Можно ли в модуле на JavaScript определить несколько секций methods, следующих в разбивку одна от другой ?

Добрый день. Скажите, пожалуйста, в модуле на JavaScript могут повторяться определение секций ? Например может ли там быть несколько секций methods:, attributes: и т.д., следующих в разбивку? Например, в начале модуля - секция attributes:, после неё - methods, затем, скажем - diff:, а после - опять methods: ? Скажите, пожалуйста, можно ли так делать? Мне обязательно надо узнать об этом.

Нравится

4 комментария

Евгений, добрый день!

В схеме используется определенный порядок секций diff: {}, attributes: {}, methods: {}, rules: {}... . Повторное использование одного из блоков приведет к некорректной работе приложения.

Я сейчас переношу модуль JQueryInputMask из BPMonline версии 7.2 в BPMonline версии 7.6 и у этого модуля следующая структура: Функции. Потом тернарный условный оператор, в условиях которого вызываются функции. Потом - большая функция, в теле которой определяются другие функции. Потом - коллекция, среди элементов которой присутствуют, в частности, функции. Потом - опять функция. И модуль заканчивается. Как вот в таком модуле расписать секцию methods ? Помогите.

Евгений, добрый день!

При переносе Вам и не нужно придерживаться описанной выше структуры. Такая структура актуальна только для схем, которые наследуются от BaseSchemaViewModel (в частности BaseSection, BasePage, BaseDetail), а другие модули могут иметь произвольную структуру. Упомянутый Вами модуль зависит только от jQuery и не использует другие модули системы, поэтому его структуру можно оставить как есть.

Повторная инициализация свойств объекта (а секции methods, diff, attributes и т.д., которые Вы перечисляете, на самом деле являются свойствами объекта) будет перезатирать их содержимое.

Эх, если бы мне это знать раньше!

Показать все комментарии