ZF2 headLink助手订购

时间:2013-07-22 14:45:44

标签: php model-view-controller zend-framework2 view-helpers

我在布局上设置了少量样式$this->headLink()->appendStylesheet(),我试图在视图中添加另一个样式表。但是,视图中的样式表始终是headLink堆栈中呈现的第一个样式表。

layout.phtml:

echo $this->headLink()->appendStylesheet($this->basePath('css/styleA.css'))
                      ->appendStylesheet($this->basePath('css/styleB.css'));

然后在视图中我尝试了以下

view.phtml:

$this->headLink()->appendStylesheet($this->basePath('css/sub/styleC.css'));

$this->headLink()->offsetSetStylesheet(100, $this->basePath('css/sub/styleC.css'));

但是,两者最终都将styleC作为第一个呈现的链接标记。我知道首先渲染子视图(即,view.phtml在layout.phtml之前呈现),但我认为只要渲染器相同,headLink和headScript等助手就会有一个共享堆栈。这个假设是错的吗?

1 个答案:

答案 0 :(得分:2)

您需要在布局中添加样式表,例如:

echo $this->headLink()->prependStylesheet($this->basePath('css/styleB.css'))
                      ->prependStylesheet($this->basePath('css/styleA.css'));

并将样式表添加到视图中,就像之前一样。