【发布时间】:2021-04-28 13:26:06
【问题描述】:
我有一个 LessonThemes 组件,我想使用 Context 访问 color 值。我有一个 Test 组件,我想在 Test 组件中导入 LessonThemes 组件,并使用 React Context 访问 Test 组件中的颜色值,但是我怎么不能实现呢。
LessonThemes.jsx
import React, { useState, useEffect } from "react";
export default function LessonThemes() {
const [color, setColor] = useState(localStorage.getItem("color"));
const [themes, setThemes] = useState([
{ name: "G", color: "green" },
{ name: "R", color: "red" },
{ name: "B", color: "blue" },
])
useEffect(() => {
localStorage.setItem("color", color);
})
const SideBarPageContent = (SideBarPageContentBackground) => {
localStorage.setItem('color', SideBarPageContentBackground);
setColor(SideBarPageContentBackground);
}
return (
<>
{
themes.map((theme, index) => {
return (
<label key={index}>
<input
onChange={() => SideBarPageContent(theme.color)}
type="radio"
name="background"
/>{theme.name}</label>
);
})
}
</>
);
}
Test.jsx
export default function Test(props) {
return <LessonThemes />
}
【问题讨论】:
标签: javascript reactjs function react-hooks react-context