Episerver/CMS & Dojo/Aspect– 如何在 Dojo 中捕获 revert to publish 事件?
Episerver/CMS & Dojo/Aspect– how to catch revert to publish event in Dojo?
在 post Event on "Revert to Published" 中,我找到了 "attach" 的代码来 revertToPublished 事件。
dojo.require(["dojo/aspect", "epi/dependency"], function(aspect, dependencey) {
var editingCommands = dependency.resolve("epi.cms.contentEditing.command.Editing");
aspect.before(editingCommands.revertToPublished, "_execute", function() {
// TODO: Reverting Content To Published
});
});
基本上代码是正确的并且应该可以工作,但至少在我的小部件中如果我在
中设置它
postCreate: function () {}
不会,所以永远不会调用 advise 方法。 before 和 after 方法注册都不起作用。 around 注册有效并立即调用 (as it should)。
我想我漏掉了一些具体的东西。足够的解决方案也是能够检查模型是否是新加载的,因此没有 属性 跟踪变化。
下面的代码可以达到目的。
aspect.before(
dependency.resolve("epi.cms.contentEditing.command.Editing").model,
"revertToPublished",
function() {});
在 post Event on "Revert to Published" 中,我找到了 "attach" 的代码来 revertToPublished 事件。
dojo.require(["dojo/aspect", "epi/dependency"], function(aspect, dependencey) {
var editingCommands = dependency.resolve("epi.cms.contentEditing.command.Editing");
aspect.before(editingCommands.revertToPublished, "_execute", function() {
// TODO: Reverting Content To Published
});
});
基本上代码是正确的并且应该可以工作,但至少在我的小部件中如果我在
中设置它postCreate: function () {}
不会,所以永远不会调用 advise 方法。 before 和 after 方法注册都不起作用。 around 注册有效并立即调用 (as it should)。
我想我漏掉了一些具体的东西。足够的解决方案也是能够检查模型是否是新加载的,因此没有 属性 跟踪变化。
下面的代码可以达到目的。
aspect.before(
dependency.resolve("epi.cms.contentEditing.command.Editing").model,
"revertToPublished",
function() {});