2017-05-11 13 views
0

なぜこのコードは反応しませんか?オーバーレイの反応設定オーバーレイに失敗しました

componentWillReceiveProps(nextProps) { 

     if (this.props.show !== nextProps.show) { 
      document.body.style.overflowX = 'hidden'; 
      document.body.style.overflowY = 'hidden'; 
     } 

     if(nextProps.show === false){ 
      document.body.style.overflowX = 'auto'; 
      document.body.style.overflowY = 'auto'; 
     } 
    } 

私は私はあなたが達成しようとしているものはかなりわからないんだけど、オーバーレイ

答えて

0

のスクロールバーを非表示にしようとしています。しかし、次のコードは、nextProps.show値に基づいてオーバーフロースタイルを正しく変更します。

componentWillReceiveProps(nextProps) { 
    if (this.props.show !== nextProps.show) { 
     document.body.style.overflowX = nextProps.show ? 'hidden' : 'auto'; 
     document.body.style.overflowY = nextProps.show ? 'hidden' : 'auto'; 
    } 
} 
+0

何とかcomponentWillReceivePropsがトリガーしない –

+0

次に、指定されたコードでは答えが得られません。オーバーレイがあるときに 'show' propをどのように変更するかを確認する必要があります。 –

関連する問題