如果我只传递一个类型但在尝试传递其他数据时抛出错误,则面包屑可以正常工作:
client.leaveBreadcrumb(msg, {
type: 'navigation',
component: 'Something',
props: props,
previousScene: 'Previous',
});
关于为什么会发生这种情况的任何想法?
如果我只传递一个类型但在尝试传递其他数据时抛出错误,则面包屑可以正常工作:
client.leaveBreadcrumb(msg, {
type: 'navigation',
component: 'Something',
props: props,
previousScene: 'Previous',
});
关于为什么会发生这种情况的任何想法?
这是leaveBreadcrumb
函数的类型定义:
public leaveBreadcrumb(name: string, metadata?: IMetadata | string): void;
您会看到允许的参数是name
和metadata
。所以你不能添加任意参数。
metadata
是一个带有可选字段的键值对对象type
,即它的类型定义如下:
export interface IMetadata {
type?:
| "error"
| "log"
| "navigation"
| "process"
| "request"
| "state"
| "user"
| "manual";
[key: string]: IMetadataValue | string | number | boolean | undefined;
}
按照 Bugsnag最新的 React Native 文档,您可以看到有 3 个字段用于留下自定义面包屑。
我会将您的代码修改为以下内容:
Bugsnag.leaveBreadcrumb(msg, {
component: 'Something',
props: props,
previousScene: 'Previous'
},
'navigation'
);