Необходима проверка работоспособности объекта Coldfusion - PullRequest
0 голосов
/ 30 сентября 2010

Мне нужно знать, правильно ли я иду о чем-то.

Для данной страницы я создаю экземпляр объекта для самой страницы. Давайте назовем этот объект myPage. Внутри страницы у меня есть контейнеры (обычно теги div). Когда я перехожу к компоненту администратора для работы с конкретным div, я также создаю для него объект. Давайте назовем это myDiv.

Теперь, одна из вещей, с которыми я хочу работать для данного div - это оформление этого div. Поэтому обычно я думаю, что я бы просто добавил некоторые связанные со стилем методы, такие как myDiv.getPadding () или myDiv.getBackgroundColor () и т. Д.

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

Учитывая это, я должен тогда создать отдельный style.cfc? Будет ли это расширено объектом div? Или объект стиля расширит объект div? Насколько я понимаю, что более конкретный объект расширяет менее конкретный, но я не уверен, что более конкретно в данном случае: это объект div, который ссылается на конкретный div, или объект стиля, который предоставляет определенный набор данные

Заранее спасибо!

Ответы [ 2 ]

3 голосов
/ 30 сентября 2010

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

Однако при условии, что вам нужно создавать их на лету ...

У меня не было бы ни элемента управления (div), расширяющего стиль, ни наоборот. Стиль не является более конкретным определением div, и не является обратным. Я хотел бы создать объект стиля, который содержит только метаданные отображения для данного элемента или набора элементов. Это может содержаться в вашем объекте control / div (не расширение) или может быть частью объекта страницы. Стиль определенно связан с элементом управления, но я бы не стал их сочетать, так как это усложняет разделение контента и презентации.

0 голосов
/ 01 октября 2010

Я ни в коем случае не говорю, что это лучший подход, но если вы действительно хотите использовать CFC для стилизации ваших страниц, вы можете использовать DivTag.cfc, расширяющий HtmlTag.cfc, который будет действовать как ваш базовый класс для всехHTML-теги.Затем вы можете составить StyleAttribute.cfc в свой HtmlTag.cfc для работы с любыми свойствами стиля, такими как цвета фона и отступы.Итак, в конечном итоге вы должны вызывать такие функции, как myDiv.getStyle (). GetPadding ().

В общем, вы должны действительно попытаться отдать предпочтение композиции ("has a") перед наследованием ("is a") ине сходите с ума от ваших иерархий компонентов.В этом случае я бы порекомендовал использовать CSS-файлы для оформления ваших страниц.

...