-1

我想在我的一个控制器中执行一个操作来输出纯 javascript,但是我在书中找不到任何关于实现此目的的正确方法的内容。

我试过$this->response->type('js');哪个确实设置Content-Type: text/javascript; charset=UTF-8但没有将布局更改为 Layouts/js/default.ctp

我一直在寻找帖子说要使用$this->RequestHandler->renderAs($this, 'js') ,但好像该方法不再存在:app\views\layouts\js 的用途是什么?

到目前为止唯一有效的是$this->layoutPath = "js";如何更改 cakephp 布局?

不过,这篇文章好像是从Cake 1.3天开始的。这仍然是切换到 js 布局的正确方法吗?

4

1 回答 1

1

RequestHandlerComponent::renderAs还存在:

http://book.cakephp.org/2.0/en/core-libraries/components/request-handling.html#RequestHandlerComponent::renderAs

不要忘记在您的控制器中包含请求处理程序组件,然后它应该可以正常工作。

public $components = array
(
    'RequestHandler'
);

public function action()
{
    $this->RequestHandler->renderAs($this, 'js');
}
于 2012-10-30T19:19:40.483 回答