1

我正在学习 FW/1 框架,到目前为止一切都很好。我主要了解控制器/服务/视图的工作原理。但是,在某些情况下,我有一些额外的功能可以操纵视图,即根据返回给视图的内容更改 CSS 和布局。添加此功能以使视图可以访问它们的最佳位置在哪里?

4

1 回答 1

3

举个例子,我通常会使用一个“格式化程序”对象——在我的应用程序中一致地格式化日期等。为了在 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) 中。

于 2013-07-19T11:36:50.373 回答