在 silverstripe 3.1 中只为管理员加载 Javascript

Load Javascript just for admin in silverstripe 3.1

我正在尝试向我的管理员添加一些自定义 javascript,但没有这么愉快。到目前为止我尝试的是。

Requirements::javascript('../mysite/modules/widgets/widgets/calculator/admin/js/admin.js');

路径是正确的,因为当我 fopen 时它 returns 正确。

我也尝试了以下方法。

LeftAndMain::require_javascript('../mysite/modules/widgets/widgets/calculator/admin/js/admin.js');

与 fopen 相同。

无论是否加载它都没有给出任何错误(我在开发工具中检查了网络选项卡)

路径应该是相对于站点根目录而不是 cms 或框架文件夹。换句话说:'mysite/modules/widgets/widgets/calculator/admin/js/admin.js'

根据您的情况,我在使用 yml 时运气更好。我不相信动态加载在 ajax 请求上总能完美运行。在这种情况下,它看起来像:

LeftAndMain:
  extra_requirements_javascript:
    - mysite/modules/widgets/widgets/calculator/admin/js/admin.js