【发布时间】:2023-04-02 18:00:02
【问题描述】:
我正在使用 SilverStripe 3.0 CMS,我需要在 CMS 中包含 Google 地图。
我正在关注this steps,除了它有点旧,official documentation 在当前版本的 SilverStripe 中使用相同的方法(至少它似乎是当前版本的文档)。
问题出在这部分代码中:
Behaviour.register({
"#Form_EditForm" : {
initialize : function() {
this.observeMethod("PageLoaded", this.adminPageHandler);
this.adminPageHandler();
},
adminPageHandler : function() {
initialize();
}
}
});
首先,行为没有定义。我需要手动包含框架中的 behavior.js 文件。但是现在,我得到一个类型错误:
this.observeMethod is not a function
有人可以告诉我在 SilverStripe CMS 中打开页面编辑器时我可以做些什么来调用 javascript 函数吗?
【问题讨论】:
-
大部分 js 已经在 3.0 版本中被重写,我猜上面的代码片段已经被弃用了。但是您真的按照您提到的论坛帖子中的步骤进行操作吗?通过“getCMSFields”中的“Requirements”调用附加 javascript 应该可以正常工作。
-
啊,现在我看到你的问题了,论坛帖子中的代码也使用了这个'Behaviour.register'片段,我将在下面发布一个答案。