为什么是Widgets而不是HTML?

时间:2012-02-24 20:45:49

标签: yii

我在Yii框架的开发中注意到了 许多基本HTML元素的函数(CHtml有按钮,链接等) 以及菜单(可以很容易地用列表替换)。 我的问题是,尽可能使用小部件是理想的选择吗? 我什么时候应该使用HTML?

3 个答案:

答案 0 :(得分:2)

使用小部件的最大优势之一是您自动生成HTML代码,这意味着更少的代码/功能和更少的编码。

例如,在Yii中,您拥有WidgetFactory(在config / main中),您可以在其中指定所有小部件的默认属性。 更改出厂默认设置会更改整个应用/网站小部件。

这样,您只需处理某些特定视图,您可能需要调整窗口小部件的行为。

您还可以破解Widget代码以调整HTML / js代码生成以满足您的需求。

答案 1 :(得分:1)

有时,框架会用自己的小部件替换基本的HTML。

对于链接小部件,框架可能会执行其他操作,例如,如果链接指向当前页面,则会自动提供class="active",因此可以采用不同的样式。

答案 2 :(得分:1)

窗口小部件是HTML等价物的整洁包装器。 Yii中的小部件通常还会加载所需的JavaScript库。例如,Yii中的CMaskedTextField包含一个jQuery蒙版输入插件,它将与窗口小部件一起加载。编码相同的HTML / JavaScript等价物将需要更多行代码。