文字列の最初と最後から空白を削除したい。たとえば、「Test」という文字列が指定された場合、「Test」を受け取ります。 JavaScriptのメソッドといくつかのnpmライブラリを試しましたが、React Native?
問題はsetEmail
の呼び出しと使用しているES6構文にあります。あなたがするとき:
email => this.setEmail({email})
トランスパイラーはそれを次のように変換します。
email => this.setEmail({email: email})
もちろんどちらがオブジェクトです。
次に、関数内で、trim
関数をオブジェクトに適用しようとしていますが、これはもちろん失敗します。代わりにこれを試してください:
email => this.setEmail(email)
ES6のオブジェクトリテラル構文について詳しくは、 ここ をご覧ください。
トリムはスペースのみをクリーンアップします。タブ、nbspなどを含むすべてをクリーンアップする場合は、次のように使用できます。
"\u2007 TEST \t\n".replace(/^\s+|\s+$/g, ""); // "TEST"
トリミングする文字列が状態であり、スペースをトリミングしたいがページ全体をレンダリングしたくない場合は、次のように直接実行できます。
this.state.text = this.state.text.trim()