通知

通知通常用于所采取的操作成功或导致错误或警告时。它们还可以用来显示信息性消息。

通知的例子

上面的截图显示了类型错误、警告、信息和成功的通知。最后一个通知使用通知标题(“Well done”)。

使用PHP创建通知

要触发通知,请创建通知对象的实例并调用通知方法实际显示通知:

$id = '$PluginName_$NotificationId';//例如' mypluginname_unsuccessfullogin '。$notification = new \Piwik\ notification ('My notification message');\ Piwik \ \经理:通知:通知(id、通知美元);

这个例子用消息触发一个信息通知(默认)我的通知信息并显示在Matomo的状态栏中(在更新检查器和站点选择器的下方)。

通知ID应该是唯一的ID,最好由插件名和标识这种类型通知的标识符组成。该ID确保如果在同一请求中多次触发同一通知,则不会多次显示该通知。

自定义通知

设置标题

在消息内容之前将显示一组标题。

$notification->title = '我的通知标题';

设置上下文

属性可以更改通知的上下文(严重性)上下文属性和赋值通知::CONTEXT_ *常数。例如:

$notification->context = notification::CONTEXT_SUCCESS;$notification->context = notification::CONTEXT_INFO;$notification->context = notification::CONTEXT_WARNING;$notification->context = notification::CONTEXT_ERROR;

通知类型

默认情况下,通知只显示在触发它的同一页面视图上。但是,你可以通过设置一个不同的类型来改变这种行为:

$notification->类型=通知::TYPE_TOAST;$notification->类型=通知::TYPE_PERSISTENT;

toast类型的通知就像常规通知一样显示,但它将在几秒钟后消失。

在用户显式关闭通知之前,将显示持久类型的通知。即使用户重新加载页面,也会显示通知。

在消息中使用HTML

如果您需要使用HTML作为通知消息的一部分,例如显示链接,那么您需要设置标志美元的生真正的.如果启用此标志,请确保消息不包含任何用户输入,或仅包含安全转义的用户输入安全的原因。

$notification->raw = true;

更多信息和示例

在API参考中了解关于Notification类的更多信息

使用JavaScript的通知

控件可以显示客户端通知NotificationsStore单例模式:

import {NotificationsStore} from 'CoreHome';const instanceId = NotificationsStore。show({id: ' mypluginname_unsuccfullogin ', type: 'transient', context: 'info', //或'warning'或'error'或'success' title: 'Optional', message,});setTimeout(() => {NotificationsStore.scrollToNotification(instanceId);}, 200);

这些选项与PHP通知相同。

放置通知

要将通知放置在页面的特定部分,请使用通知Vue组件在另一个组件中。

要在Vue之外放置通知,可以使用placeat选择:

import {NotificationsStore} from 'CoreHome';const instanceId = NotificationsStore。show({type: 'transient', context: 'info', //或'warning'或'error'或'success' title: 'Optional', message, placeat: '#mySelector', //这也可以是HTMLElement});

元素placeat引用将被挂载为Vue应用程序和任何初始内容删除。

Baidu