質問編集履歴

2

2重で表示されている部分を削除

2021/01/20 08:20

投稿

sabx
sabx

スコア200

test CHANGED
File without changes
test CHANGED
@@ -115,121 +115,3 @@
115
115
 
116
116
 
117
117
  ```
118
-
119
- ### 聞きたいこと
120
-
121
- divタグでラップしている自作コンポーネントをクリックしたタイミングでイベントを発火させたいと思っています。
122
-
123
- `onClick`や `onChange` でイベントを発火させようと試みましたが、全く反応しません。
124
-
125
-
126
-
127
- ※下のコードのCheckboxが自作コンポーネントで、divタグを含むコンポーネントをreturnしています。
128
-
129
-
130
-
131
- ```
132
-
133
- import * as React from "react";
134
-
135
- import "./styles.css";
136
-
137
- import { Checkbox } from "./Checkbox";
138
-
139
-
140
-
141
- export default function App() {
142
-
143
- const [checked, setChecked] = React.useState(false);
144
-
145
- return (
146
-
147
- <div className="App">
148
-
149
- <h1>Hello CodeSandbox</h1>
150
-
151
- <br />
152
-
153
- <Checkbox
154
-
155
- checked={checked}
156
-
157
- onChange={() => {
158
-
159
- setChecked(!checked);
160
-
161
- }}
162
-
163
- onClick={() => setChecked(!checked)}
164
-
165
- />
166
-
167
- </div>
168
-
169
- );
170
-
171
- }
172
-
173
-
174
-
175
- ```
176
-
177
-
178
-
179
- - Checkbox.tsx
180
-
181
-
182
-
183
- ```
184
-
185
- import * as React from "react";
186
-
187
- import styled from "styled-components";
188
-
189
-
190
-
191
- const Icon = styled.svg`
192
-
193
- fill: none;
194
-
195
- stroke: white;
196
-
197
- stroke-width: 2px;
198
-
199
- `;
200
-
201
-
202
-
203
- const Wrapper = styled.div<{ checked: boolean }>`
204
-
205
- ${Icon} {
206
-
207
- visibility: ${(props) => (props.checked ? "visible" : "hidden")};
208
-
209
- }
210
-
211
- `;
212
-
213
-
214
-
215
- export const Checkbox = (props) => {
216
-
217
- console.log(props);
218
-
219
- return (
220
-
221
- <Wrapper checked={props.checked}>
222
-
223
- <input type="checkbox" />
224
-
225
- <Icon />
226
-
227
- </Wrapper>
228
-
229
- );
230
-
231
- };
232
-
233
-
234
-
235
- ```

1

なぜかコードが表示されていない

2021/01/20 08:20

投稿

sabx
sabx

スコア200

test CHANGED
File without changes
test CHANGED
@@ -115,3 +115,121 @@
115
115
 
116
116
 
117
117
  ```
118
+
119
+ ### 聞きたいこと
120
+
121
+ divタグでラップしている自作コンポーネントをクリックしたタイミングでイベントを発火させたいと思っています。
122
+
123
+ `onClick`や `onChange` でイベントを発火させようと試みましたが、全く反応しません。
124
+
125
+
126
+
127
+ ※下のコードのCheckboxが自作コンポーネントで、divタグを含むコンポーネントをreturnしています。
128
+
129
+
130
+
131
+ ```
132
+
133
+ import * as React from "react";
134
+
135
+ import "./styles.css";
136
+
137
+ import { Checkbox } from "./Checkbox";
138
+
139
+
140
+
141
+ export default function App() {
142
+
143
+ const [checked, setChecked] = React.useState(false);
144
+
145
+ return (
146
+
147
+ <div className="App">
148
+
149
+ <h1>Hello CodeSandbox</h1>
150
+
151
+ <br />
152
+
153
+ <Checkbox
154
+
155
+ checked={checked}
156
+
157
+ onChange={() => {
158
+
159
+ setChecked(!checked);
160
+
161
+ }}
162
+
163
+ onClick={() => setChecked(!checked)}
164
+
165
+ />
166
+
167
+ </div>
168
+
169
+ );
170
+
171
+ }
172
+
173
+
174
+
175
+ ```
176
+
177
+
178
+
179
+ - Checkbox.tsx
180
+
181
+
182
+
183
+ ```
184
+
185
+ import * as React from "react";
186
+
187
+ import styled from "styled-components";
188
+
189
+
190
+
191
+ const Icon = styled.svg`
192
+
193
+ fill: none;
194
+
195
+ stroke: white;
196
+
197
+ stroke-width: 2px;
198
+
199
+ `;
200
+
201
+
202
+
203
+ const Wrapper = styled.div<{ checked: boolean }>`
204
+
205
+ ${Icon} {
206
+
207
+ visibility: ${(props) => (props.checked ? "visible" : "hidden")};
208
+
209
+ }
210
+
211
+ `;
212
+
213
+
214
+
215
+ export const Checkbox = (props) => {
216
+
217
+ console.log(props);
218
+
219
+ return (
220
+
221
+ <Wrapper checked={props.checked}>
222
+
223
+ <input type="checkbox" />
224
+
225
+ <Icon />
226
+
227
+ </Wrapper>
228
+
229
+ );
230
+
231
+ };
232
+
233
+
234
+
235
+ ```