gpt4 book ai didi

javascript - 如何在 React JSX 中调用 Web API?

转载 作者:行者123 更新时间:2023-11-28 10:38:05 25 4
gpt4 key购买 nike

我正在使用 React 和 Electron 编写一个音乐播放器,并希望添加音频元数据,以便获得 MPRIS 支持。所以我做了一些搜索,发现Media Session API是我所需要的。为了测试它,我将上面链接包含的 exmaple 代码中的代码复制到我的项目中的函数中。

  navigator.mediaSession.metadata = new MediaMetadata({
title: 'Unforgettable',
artist: 'Nat King Cole',
album: 'The Ultimate Collection (Remastered)',
artwork: [
{ src: 'https://dummyimage.com/96x96', sizes: '96x96', type: 'image/png' },
{ src: 'https://dummyimage.com/128x128', sizes: '128x128', type: 'image/png' },
{ src: 'https://dummyimage.com/192x192', sizes: '192x192', type: 'image/png' },
{ src: 'https://dummyimage.com/256x256', sizes: '256x256', type: 'image/png' },
{ src: 'https://dummyimage.com/384x384', sizes: '384x384', type: 'image/png' },
{ src: 'https://dummyimage.com/512x512', sizes: '512x512', type: 'image/png' },
]
});

我将它放入一个函数中,当播放下一首歌曲时,组件将调用该函数。但是,我遇到了如下错误:

Failed to compile.

./src/components/FM/Cover/index.jsx
Line 112: 'MediaMetadata' is not defined no-undef

Search for the keywords to learn more about each error.

为什么?

最佳答案

您需要引用window对象。

window.MediaMetadata
^^^^^^

这是因为 babel/es-lint 不知道 MediaMetadata 存在并且会抛出错误。由于 Chrome 将此对象作为全局变量注入(inject),因此可以通过 window 对象访问它。

(为了便于使用,重新发布@AngelSalazar在OP评论中所说的话)

关于javascript - 如何在 React JSX 中调用 Web API?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57433096/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com