logger

日志 console 打印拦截器,类似 redux-logger。

接入指南

logger 可用于打印 SDM 的初始化、下发和事件回调链路日志。若手动覆盖某条拦截器数组,需要将 logger 显式放回对应链路。

根据业务场景接入 logger

src/devices/index.ts

import { SmartDeviceModel, logger } from '@ray-js/panel-sdk';
import { defaultSchema } from '@/devices/schema';

type SmartDeviceSchema = typeof defaultSchema;

const options = {
  interceptors: {
    init: {
      initDpState: [logger],
      initDevInfo: [logger],
    },
    request: {
      publishDps: [logger],
    },
    response: {
      onDpDataChange: [logger],
      onDeviceOnlineStatusUpdate: [logger],
      onDeviceInfoUpdated: [logger],
      onNetworkStatusChange: [logger],
      onBluetoothAdapterStateChange: [logger],
    },
  },
};

export const devices = {
  common: new SmartDeviceModel<SmartDeviceSchema>(options),
};

支持的链路

分类可配置项
initinitDpState、initDevInfo
requestpublishDps
responseonDpDataChange、onDeviceOnlineStatusUpdate、onDeviceInfoUpdated、onNetworkStatusChange、onBluetoothAdapterStateChange

API

export declare const logger: Interceptor<any, any, any>;