まあ、この質問はダムだと思うかもしれませんが、私は2時間以上これと戦っています。ネイティブとしばらくの間答えを見つけていない、私は多分あなたたちが私を助けることができると思った。サブストリングをReact Nativeで使用しているときに 'undefined is not object'というエラーが発生する
実際には、単純なReact Nativeアプリを構築しています。そこで、HubSpotのAPIに接続していくつかのブログ投稿を取得し、それらを表示したり、やり取りしたりしています。これは今のところうまくいきますが、JSONを解析しているときに、タイムスタンプを含む "publish_date"フィールドがあります。何らかの理由で、このタイムスタンプに3つの余分な数字が含まれています。これはタイムゾーンのものだと思います。とにかく、私は '反応タイムスタンプ'を使用してタイムスタンプを出力すると、私はこの値を使用し、私はあまりにも遠くに日付の方法を取得します。だから私は最後の3桁を削除し、正しい日付を出力するために部分文字列を使用すると考えました。
これが失敗しているコードの一部です:
renderRow(post) {
return(
<View style={styles.row}>
<Image style={styles.image} source={{uri: post.featured_image}} />
<View style={styles.info}>
<Text style={styles.title}>{post.title}</Text>
<Text style={styles.author}>Por {post.author_name}</Text>
<Timestamp time={post.publish_date.substring(10)} component={Text} format='date' />
</View>
</View>
);
}
render() {
return(
<ListView
dataSource={this.state.dataSource}
renderRow={this.renderRow.bind(this)}
style={styles.page}
/>
);
}
私はそれを実行すると、私は次のエラーを取得:
私は真剣に私が「かわかりません私は間違っている、と私は繰り返す、これは私にとって新しいものなので、失礼ではないでください。昨日私は.replace( '')を使用しようとして同じエラーで走ったので、私はあきらめて別の解決策を探しました。この場合、私は他には行くことができないと思う。
私があなたを助けてくれることを願っています。前もって感謝します。
私はこれ以上多くの時間をかけて作業しており、いくつかの異なる結果が得られました。おそらくこの問題は私がインストールしたタイムスタンプモジュールに直接関係すると思うかもしれません。だから私は**というメインクラスの外に関数**を追加しました。私はその関数でタイムスタンプを分割したコードを実行して正しいものを取得しましたが、すべてが通過しましたが、Timestampモジュール内で呼び出すと同じエラーが発生しますが、 ' {cts } '** cts **は関数の結果ですが、正しく表示されます。私はここで何が欠けていますか? –