我正在尋找一個PropType
這意味着如何聲明一個對應於一個可爲空的數字的PropType?
「這是必需的,它要麼是數字或爲空」
換句話說,我現在已經是
PropTypes.number.isRequired
但如果null
值傳入,則會引發警告,但我希望null
是可接受的值。
我正在尋找一個PropType
這意味着如何聲明一個對應於一個可爲空的數字的PropType?
「這是必需的,它要麼是數字或爲空」
換句話說,我現在已經是
PropTypes.number.isRequired
但如果null
值傳入,則會引發警告,但我希望null
是可接受的值。
只需使用:
PropTypes.number
默認情況下,所有的道具類型不是必需的(即允許null
或undefined
),除非你對他們的最後彈出一個.isRequired
。
你可以看到這裏proptypes完整文檔:
但這讓'undefined'過,它允許忘記設置的道具! –
好要知道的,但可能滿足OP的需求依然。 – ctrlplusb
如何: PropTypes.oneOfType([PropTypes.number, null]).isRequired;
?
應該工作自15.4.0。
編輯:剛注意到這是一年前問的。好吧,我會在這裏留下這個答案。
不幸的是,它不起作用。第二個數組元素中的「null」不是React期望的proptype函數。 –
您應該使用'PropTypes.oneOf([空])',而不是僅僅'null' –
然而,即使'undefined'將被視爲有效的屬性,所以我沒有看到過只是使它可選任意值,如@ctrlplusb解決方案建議 –
你能否澄清一下,當prop通過'undefined'但是'null'通過時(即檢測錯字),你想要拋出警告嗎? – binki
這似乎是最新的,因爲我一直在關注它。 https://github.com/facebook/prop-types/pull/90 –