質問編集履歴

1

MESSAGE Componentのコードの一部を追加

2018/06/09 08:59

投稿

Saggitarie
Saggitarie

スコア9

test CHANGED
File without changes
test CHANGED
@@ -324,6 +324,274 @@
324
324
 
325
325
 
326
326
 
327
+ ```JavaScript
328
+
329
+ class MessageDialog extends React.Component {
330
+
331
+
332
+
333
+ constructor(props) {
334
+
335
+ super(props);
336
+
337
+
338
+
339
+ this.state = {
340
+
341
+
342
+
343
+ open: false,
344
+
345
+ userInfo: {
346
+
347
+ username: {
348
+
349
+ value: '',
350
+
351
+ },
352
+
353
+ name: {
354
+
355
+ value: '',
356
+
357
+ isError: false,
358
+
359
+ },
360
+
361
+ innId:{
362
+
363
+ value:'',
364
+
365
+ },
366
+
367
+ numOfPeople: {
368
+
369
+ value: '',
370
+
371
+ isError: false,
372
+
373
+ },
374
+
375
+ tel: {
376
+
377
+ value: '',
378
+
379
+ isError: false,
380
+
381
+ },
382
+
383
+ checkIn: {
384
+
385
+ value: '',
386
+
387
+ isError: false,
388
+
389
+ },
390
+
391
+ checkOut: {
392
+
393
+ value: '',
394
+
395
+ isError: false,
396
+
397
+ },
398
+
399
+ comment: {
400
+
401
+ value: '',
402
+
403
+ isError: false,
404
+
405
+ }
406
+
407
+ },
408
+
409
+ };
410
+
411
+ }
412
+
413
+
414
+
415
+
416
+
417
+ handleNameChange (event) {
418
+
419
+ const name = event.target.value;
420
+
421
+ const userInfo = Object.assign({}, this.state.userInfo, {
422
+
423
+ name: Object.assign({}, this.state.userInfo.name, {
424
+
425
+ value: name,
426
+
427
+ isError: !event.target.validity.valid
428
+
429
+ })
430
+
431
+ });
432
+
433
+ this.setState({userInfo: userInfo});
434
+
435
+ }
436
+
437
+ handleNumChange (event) {
438
+
439
+ const numOfPeople = event.target.value;
440
+
441
+ let error = false;
442
+
443
+ if (numOfPeople === '')
444
+
445
+ error = true;
446
+
447
+
448
+
449
+ const userInfo = Object.assign({}, this.state.userInfo, {
450
+
451
+ numOfPeople: Object.assign({}, this.state.userInfo.numOfPeople, {
452
+
453
+ value: numOfPeople,
454
+
455
+ isError: error
456
+
457
+ })
458
+
459
+ });
460
+
461
+ this.setState({userInfo: userInfo});
462
+
463
+ }
464
+
465
+ handleTelChange (event) {
466
+
467
+ const tel = event.target.value;
468
+
469
+ const userInfo = Object.assign({}, this.state.userInfo, {
470
+
471
+ tel: Object.assign({}, this.state.userInfo.tel, {
472
+
473
+ value: tel,
474
+
475
+ isError: !event.target.validity.valid
476
+
477
+ })
478
+
479
+ });
480
+
481
+ this.setState({userInfo: userInfo});
482
+
483
+ }
484
+
485
+ handleCheckInChange (event) {
486
+
487
+ const checkIn = event.target.value;
488
+
489
+ const userInfo = Object.assign({}, this.state.userInfo, {
490
+
491
+ checkIn: Object.assign({}, this.state.userInfo.checkIn, {
492
+
493
+ value: checkIn,
494
+
495
+ isError: !event.target.validity.valid
496
+
497
+ })
498
+
499
+ });
500
+
501
+ this.setState({userInfo: userInfo});
502
+
503
+ }
504
+
505
+ handleCheckOutChange (event) {
506
+
507
+ const checkOut = event.target.value;
508
+
509
+ const userInfo = Object.assign({}, this.state.userInfo, {
510
+
511
+ checkOut: Object.assign({}, this.state.userInfo.checkOut, {
512
+
513
+ value: checkOut,
514
+
515
+ isError: !event.target.validity.valid
516
+
517
+ })
518
+
519
+ });
520
+
521
+ this.setState({userInfo: userInfo});
522
+
523
+ }
524
+
525
+ handleCommentChange (event) {
526
+
527
+ const comment = event.target.value;
528
+
529
+ const userInfo = Object.assign({}, this.state.userInfo, {
530
+
531
+ comment: Object.assign({}, this.state.userInfo.comment, {
532
+
533
+ value: comment,
534
+
535
+ })
536
+
537
+ });
538
+
539
+
540
+
541
+ this.setState({userInfo: userInfo});
542
+
543
+ }
544
+
545
+
546
+
547
+ static getDerivedStateFromProps(props, state) {
548
+
549
+ if (props.message.userInfo.innId.value !== '') {
550
+
551
+ return Object.assign({}, state, {
552
+
553
+ userInfo: Object.assign({}, state.userInfo, {
554
+
555
+ innId: Object.assign({}, state.userInfo.innId, {
556
+
557
+ value: props.message.userInfo.innId.value
558
+
559
+ })
560
+
561
+ })
562
+
563
+ })
564
+
565
+ }
566
+
567
+ if (props.account.claims !== null && props.account.claims.sub !== '') {
568
+
569
+ return Object.assign({}, state, {
570
+
571
+ userInfo: Object.assign({}, state.userInfo, {
572
+
573
+ username: Object.assign({}, state.userInfo.username, {
574
+
575
+ value: props.account.claims.sub
576
+
577
+ })
578
+
579
+ })
580
+
581
+ })
582
+
583
+ }
584
+
585
+ return state;
586
+
587
+
588
+
589
+ };
590
+
591
+ ```
592
+
593
+
594
+
327
595
  ### 試したこと
328
596
 
329
597