9

我正在尝试找到一种在使用 turbolinks 5 时处理 rails (v4.1) flash 消息的方法。

我尝试添加data-temporary="true"到每个 Flash 消息 div,然后是:

$(document).on('turbolinks:before-cache', function () {
  $('[data-temporary]').remove();
});

所以旧的闪存消息不会被缓存,并且不会在用户下次访问同一页面时显示。

但是,这让我在我正在使用的页面上遇到了问题,flash.now因为在这些页面上,闪存已从缓存版本中删除,但随后 turbolinks 会刷新服务器中的内容,flash.now然后出现消息,这有点令人不快用户角度。

我环顾四周,找不到任何闪光来指示它们是否.now存在,因此data-temporary只能应用于临时闪光。

我正在尝试使用 turbolinks 而不是禁用它的功能。

我正在尝试找到一种方法来删除闪光灯before-cache,但如果它们是flash.now类型的话。

有什么建议么?

4

1 回答 1

1

发送带有不同符号的 flash.now 怎么样,这样您就可以将它们与需要删除的符号区分开来。例如

flash.now[:dont_remove_me_please] = "Could not save client"

有了它,您可以检查“类型”,并将它们从删除中排除。

于 2018-06-15T14:54:32.493 回答