2015-07-11 47 views
1

當您需要使用組件的局部變量但是感覺道具/狀態不合適時它是否合適(適當的模式),因爲它不會驅動ui並將其作爲道具很沉重。React.js和組件本地變量

所以,我正在做一些動作,所以我的組件需要知道窗口的大小。所以,我只圖增加一個變種包含它:

var BoxMove = React.createClass({ 
     displayName: "movable box", 

     clientWidth: document.documentElement.clientWidth, // this here 

     getDefaultProps: function() { 
     // etc.. 
     } 

     render: function() { 
     // use the local var 
      var move = 0; 
      if(this.clientWidth > 1000) { 
      move = 100; 
      } 

     return (// whatever 
     ) 
     } 
}) 

那是一個合適的使用情況和地方加入不適合進入「狀態」或「託」的變量?我只顯示了一個用法,但我可能會調用該變量。

回答

2

這應該沒問題,是的。另一種處理這種情況的方法是,如果您將Flux與React一起使用,則將該信息放入商店。但如果這符合你的需求,你應該很好去。