我正在学习FW / 1框架,到目前为止一直都很好。我主要了解控制器/服务/视图的工作原理。但是我有一些额外的功能在某些情况下操纵视图,即根据返回到视图的内容改变CSS和布局。添加此功能以使其可供视图访问的最佳位置在哪里?
答案 0 :(得分:3)
使用一个例子,我通常会使用'formatter'对象 - 在我的应用程序中一致地格式化日期等。要在FW / 1应用程序中完成此操作,我通常会在setUpRequest()
中调用一个控制器方法,将格式化程序对象放入请求上下文(rc)。
例如,我的setupRequest()方法可能如下所示
function setupRequest( rc ) {
controller( 'setup.default' );
}
在setup.default()中,我的代码与此类似:
component accessors="true" {
property Any formatter;
public void function default( Any rc ){
rc.formatter = formatter;
}
}
我使用ColdSpring来处理我的依赖注入 - 但我很确定你可以很容易地使用DI / 1并且根本没有任何代码更改。
然后,例如,如果我需要在视图中格式化日期,我只需使用它:
rc.formatter.formatDate( someObject.getSomeDate() )
您可以修改此示例以使用不同的CSS等逻辑,将该逻辑放入CFC并将其包含在请求上下文(rc)中。