2016-05-16 3 views
0

Я читал много тем, прошел через множество JS-плагинов на github, и многие из них имеют свой собственный способ структурирования кода и какой шаблон использовать. В некоторых случаях очевидно, почему он пошел именно так. Но имея дело с более мелким материалом, не большой SAP, с какими шаблонами больше всего «плюсы»?Дизайн шаблона Javascript для управления DOM API

В настоящем время, я буду так: https://github.com/goranefbl/GENS-Javascript-Boilerplate/blob/master/main.js

Да, она работает просто отлично, но я задаюсь вопрос для небольших плагин, особенно те, которые просто манипулирует DOM (создание новых элементов/перемещение вокруг/добавление слушателей событий и т. д.), с чем лучше всего будет работать и, конечно, почему? Возможно, мне не нужно загрязнять пространство имен для мелочей.

Вот пример последнего компонента: gist.github.com/goranefbl/1b6144ee8cd8708c7511a1a2fb7c53a6 Его просто создавая неупорядоченные списки под полем для выбора, для упрощения стилизации.

Идет с примерным шаблоном сверху, просто не чувствует себя правильно, то есть он чувствует себя так много для чего-то подобного.

+0

Как и во всех моделях, ни один из них не подходит для всех. Это зависит от ваших целей и т. Д. – Liam

+0

Да, я согласен, как я уже говорил в начале. Возможно, я не полностью объяснил это, вот пример последнего компонента: https://gist.github.com/goranefbl/1b6144ee8cd8708c7511a1a2fb7c53a6 его просто создавая неупорядоченные списки ниже поля выбора, что позволяет легко стилизовать. Идти с примером шаблона сверху просто не чувствует себя правильно, то есть чувствует себя много. –

ответ

2

Вы ищете меньший образец, чем тот, который вы разместили. Давайте посмотрим, какие части мы можем избавиться от:

defaults объект и extendDefaults метод не нужны, вы можете использовать

window.GENSPlugin = function(firstoption, secondoption) { 

Вопрос в том, действительно ли вы нужен плагин? Вы сказали, что не хотите загрязнять глобальное пространство имен, так что об этом:

(function() { 
    'use strict'; 

    // not accessible from outside the function 
    var obj1 = document.getElementById("..."); 

    // accesible from outside 
    window.obj2 = function() { 
     ... 
    } 

})(); 
+0

Спасибо, да, я согласен. Вопрос может быть даже в том, когда использовать шаблоны, а когда нет, для чего-то такого маленького, как это, я мог бы идти своим путем с закрытием. –