有没有办法在 React 中每次重新加载页面时随机加载一个新的图标?我想要一个图标列表,并在每次加载页面时随机选择一个图标。
在 manifest.json
中,图标加载如下所示:
"icons": [ { "src": "favicon.ico", "sizes": "64x64 32x32 24x24 16x16", "type": "image/x-icon" }, { "src": "logo192.png", "type": "image/png", "sizes": "192x192" }, { "src": "logo512.png", "type": "image/png", "sizes": "512x512" } ],
是否有任何合理的方法可以从一组图标中随机选择一个图标?
P粉7225212042023-09-10 11:35:32
您可以创建一个图标数组,并使用 JavaScript 的 Math.random() 函数从数组中随机选择一个图标。参考这里:
import React, { useEffect } from 'react'; const icons = [ 'favicon1.ico', 'favicon2.ico', 'favicon3.ico', // add more icons here ]; function App() { useEffect(() => { const randomIcon = icons[Math.floor(Math.random() * icons.length)]; const link = document.querySelector("link[rel~='icon']"); link.href = randomIcon; }, []); return ( <div> {/* your app content */} </div> ); } export default App;
在上面的示例中,useEffect钩子是在组件安装时运行一些代码。我们使用 Math.random() 从图标数组中选择一个随机图标,并通过更改标签的 href 属性来更新图标。