2016-10-03 5 views
2

TypescriptのObjectをデータベースに格納する文字列に変換します。TypescriptとObjectをStringに変換する

formData.survey_data = encodeURI(JSON.stringify(formData.survey_data)); 

出力はブラウザでは機能しますが、typescriptはエラーがあると主張します。

タイプ 'string' は '[]いずれかを'

ことも何を意味するの型に代入ではないでしょうか?

+0

「survey_data」の種類は何ですか? – Whymarrh

+0

私は配列として定義しましたが、それは私の問題でした。私はそれを配列として定義し、それを文字列にしようとしました。 –

答えて

1
formData.survey_data = encodeURI(JSON.stringify(formData.survey_data)); 

提供されたコードに基づいて、私はsurvey_dataタイプany[]であると仮定するであろう。オブジェクトをシリアライズして、そのプロパティに割り当てようとしています。 TypeScriptは厳密に型付けされており、JavaScriptがそのシナリオを処理できる場合でも、それを実行することはできません。 (JavaScriptは強く型付けされていないため、任意のオブジェクトに任意のプロパティを割り当てることができます)。

+0

私は手作業でそれを他のものに割り当てたので、再割り当てしようとするとエラーが発生するのですか? –

+0

コード内のどこかformData.survey_dataには、クラス[/]のプロパティ定義があり、これはany []型であることを指定します。変更したい場合は、それを見つけなければなりません。 – kemiller2002

+0

それを見つけた! formData.survey_dataを文字列ではなく配列の前の配列として定義しました。ご協力いただきありがとうございます! –

関連する問題