给个模板分离的设计思路:
1.确定用户要经过几次页面转换才能完成这个功能。比如
注册页面,老虎的设计有三步:
一、输入用户名和密码;
二、确认密码;
三、显示成功结果,或者出现问题则退回第一步要求重填。
2.看每个页面的差异。
我们可以想像得到,第一个页面和第二个有些类似,它们都有一个表单要填,顶部都有提示。所以我们可以考虑是否可以用一个模板来实现。
但是,第一个页面有两种状态:首次访问顶部要显示欢迎信息,以及出错时顶部显示错误提示。如果把它与第二个页面合并,一个模板就会有三种不同状态,显然不方便(我试过合并它们,结果php和模板都有些复杂,不令人满意),所以还是把它们分开比较好。
第三个页面则与前两个都不同。所以我们需要写三个模板来分别实现三个页面的显示。老虎最后的结果自己感觉还是相当简洁的。分成三个而不是一个模板,并没有增加工作量,反而使我感到很轻松,我不再需要处理一大堆{if}条件语句。
而且,我相信当你某天需要修改注册页时,你也会感到轻松:每个模板的输出效果都可以从代码一目了然的看出,而且你修改了其中一页完全不需要担心会影响到另外几页的显示效果。
所以,如果你的模板中有大量的{if}条件语句,你就应该考虑是不是要把它拆分成几个模板了。