Передача аргументов, автоматически вызываемых функций и виджетов или контроллеров

Каков наилучший подход для контроллеров Alloy? Какая разница? переменная данных никогда не «вылезет» из контроллера:

var args = arguments[0] || {},
    data = {};

data.title = args.name+', '+args.age;

console.log(data.title);

or

var data = {};

(function(args){

    data.title = args.name+', '+args.age;

    console.log(data.title);

}),arguments[0] || {});

Другое дело, я использую элементы во всех своих контроллерах (кнопки, формы, таблицы и т. д.), на самом деле эти элементы являются виджетами, должны ли они быть простыми контроллерами? есть какой-то недостаток использования виджетов вместо простого контроллера


person Ricardo Pereira    schedule 08.06.2016    source источник


Ответы (1)


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

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

Тем не менее, у меня обычно есть правило для себя: виджеты — это вещи, которые вы хотите использовать в других приложениях / с открытым исходным кодом. Контроллеры доступны только для 1 приложения.

person Rene Pot    schedule 08.06.2016
comment
Еще раз спасибо Рене Пот, я не знаю, видели ли вы мой комментарий в своем вопросе об обнулении свойств объекта: stackoverflow.com/questions/37696616/ - person Ricardo Pereira; 08.06.2016
comment
Это был комментарий к объекту, я обновил основной вопрос, не могли бы вы его проверить, пожалуйста? (выделено жирным шрифтом как обновление) - person Ricardo Pereira; 08.06.2016