2017-01-10 26 views
2

我看到Airbnb's style guide包括forbid-prop-typesobject類型。 (可以看到here使用對象作爲PropType有什麼問題?

有人可以解釋爲什麼我想禁止使用PropType.object

只是它太模糊了嗎?如果是這樣,我怎麼能更具體?

+0

你跟隨鏈接? https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/forbid-prop-types.md – elclanrs

+0

@elclanrs:呃... y。我沒有看到任何解釋,爲什麼我可能要使用這個規則。我也沒有看到任何與我可能使用的proptypes有關的東西...我錯過了什麼嗎? – sfletche

+0

我想這個描述有些缺乏示例,但是我理解這是推理:「任何東西都應該被替換,數組和對象可以分別替換爲arrayOf和shape。」。想象一個像「a:any」或「a:Object」這樣的類型,它不夠窄,它可以匹配任何東西。 – elclanrs

回答

5

難道只是它太模糊?

如果是這樣,我怎麼能更具體?

基本上,他們說,如果你使用object你應該真的使用shape所以你可以指定哪些對象的鍵/值。

// An object taking on a particular shape 
    myObject: React.PropTypes.shape({ 
    color: React.PropTypes.string, 
    fontSize: React.PropTypes.number 
    }), 
+0

啊!優秀!這就是我一直在尋找的!謝謝@Jack! – sfletche

+0

@sfletche沒問題。樂於幫助! – Jack

相關問題