如何与Zend框架和NetBeans编写JavaScript?(How write JavaScri

2019-09-16 18:04发布

我写的JavaScript这样的:

<?php $this->headScript()->captureStart();?>
$(function(){
    // some javascript magic
});
<?php $this->headScript()->captureEnd(); ?>

但问题是,它没有突出显示,并且没有自动完成......我试图写这样的:

<?php $this->headScript()->captureStart();?>
//<script>
$(function(){
    // some javascript magic
});
<?php $this->headScript()->captureEnd(); ?>

现在,它被突出显示,但NetBeans是不满意不是封闭<script>标记,并与Zend其他一些问题...然后经过一些谷歌上搜索发现这一点:

<?php if( false ) {?><script><?php } ?>
$(function(){
    // some javascript magic
});
<?php if( false ) { ?></script><?php } ?>

工作正常,但也许有更好的解决这个?

Answer 1:

您可以扩展用HeadScript,这是最简单的解决方案:

class My_View_Helper_HeadScript extends Zend_View_Helper_HeadScript
{
    public function captureEnd()
    {
        $content = ob_get_contents();
        ob_clean();
        echo strip_tags($content, 'script');

        parent::captureEnd();
    }
}

指定的助手路径:

resources.view.helperPath.My_View_Helper = "My/View/Helper"

用法:

<?php $this->headScript()->captureStart();?>
    <script>
      alert(1);
    </script>  
<?php $this->headScript()->captureEnd(); ?>


Answer 2:

写在外部JS文件的JS。

这将允许更好的分离,更好的缓存,更好的聚集,更好地突出,等等。

这里有一些链接,可以帮助你:

  • 管理CSS / JS与Zend
  • 管理CSS / JS与Zend (另一个角度来看)
  • 设置的JavaScript构建路径 (自动完成和这样的东西)


文章来源: How write JavaScript with Zend Framework and netbeans?