2

我正在研究croogo,我已经完成了所有事情。但不幸的是,在实时服务器上上传时,管理菜单切换效果不起作用。检查控制台时,在第37行的admin.js中显示此错误。我搜索并找到了以下代码制作问题:

var $sidebar = $('#sidebar-menu');
var $topLevelMenus = $('#sidebar-menu > li > .hasChild');

// no item is current, fallback to current controller index
var $current = $('.sidebar .current');
if ($current.length == 0) {
    var selector = _.template(
        "a.sidebar-item[href^='<%= basePath %>admin/ +
        <%= params.plugin %>/ +
        <%= params.controller %>']:first"
    );
    if ($(selector(Croogo)).addClass('current').length == 0) {
        var selector = _.template(
            'a.sidebar-item[href="<%= basePath %>admin/' +
            '<%= params.plugin %>"]'
        );
        $(selector(Croogo)).addClass('current');
    }
}

错误消息:b>注意(8):使用未定义的常量 basePath - 假定为“basePath”[ APP/Plugin/Croogo/webroot/js/admin.js,第37行

这是我第一个使用 croogo 的项目。任何人都可以帮我解决这个问题。在此先感谢。

4

2 回答 2

3

php 解释器尝试将 javascript 文件的一部分解析为 PHP。尝试关闭 php 短标签。

于 2014-04-18T08:36:51.060 回答
0

这都是因为 PHP 配置。在某些配置中,注意错误不会中断代码的执行。但在某些主要是 Linux 配置上,任何错误都会中断执行。其中一种情况是 JS 文件有一些包装器,它会将错误消息添加到脚本并破坏其语法。另一种情况是在设置标头之前发送通知消息,其余代码无法正确执行。

大多数情况可以通过将此行添加到执行的第一个脚本来修补:

error_reporting (0);

这是 php 文档:http ://www.php.net/manual/en/function.error-reporting.php

或者在 CakePHP 的这种特殊情况下,您可以在/app/Config/core.php中设置

Configure::write('debug', 0);

这应该会有所帮助。

于 2014-04-14T11:02:36.780 回答