2016-09-22 105 views
0

React/JSX有沒有方法檢查用戶的輸入字符串是否爲空?檢查JSX中的空字符串

Component.js

{((this.props.description.name ==" ")||(this.props.description.name.length==""))? 

這種情況的工作,當用戶輸入什麼或空字符串是1個空間長,但如果空字符串超過1個空間長失敗。有沒有JSX的技巧來檢查這個或我應該在我的減速器中處理?

+0

修剪字符串並檢查長度是否爲0. –

回答

2

你可以檢查修整字符串:

{this.props.description.name.trim() == ""} 

這修剪字符串(去掉空格和換行),然後檢查是如果它是一個空字符串。這是一個CodePen演示。

+0

你爲什麼要檢查兩個?如果'name =='「'那麼長度爲0. –

+0

@EvanTrimboli完全忘了'trim()',編輯了 – Li357

+0

'this.props.description.trim()。name'? –

1

您可以輕鬆修剪文本並與空字符串進行比較。 讓我們試試:

{((this.props.description.name.trim() =="") || (this.props.description.name.trim().length==0)) 

看看它是如何工作的。 我見過你提醒減速機?你正在使用Redux,不是嗎? 如果您使用Redux處理表單數據,則可以使用Redux表單(https://github.com/erikras/redux-form)節省您的時間。

+0

何時length屬性等於一個字符串? – Li357

+0

爲什麼'trim()'永遠等於'「」'? –

+0

謝謝,我修改了我的答案。 –