2017-01-25 12 views
1

データソースのドラフトレコードが廃止されました。私はrelease notesを読んでいますが、1ビットのコードで問題があります。これにGoogle App Makerをデータソースのドラフトレコードから変換するときに問題が発生しました

widget.datasource.draft.Email = (newValue) ? newValue.PrimaryEmail : null; 

:この変換しようとしました

widget.datasource.item.Email = (newValue) ? newValue.PrimaryEmail : null; 

をしかし、このエラーを取得しています:プロパティを設定することはできませんヌル

の[メール]間違っているものを上の任意の提案を?ウィジェットはonValueChangeアクションから渡されています。私はあなたが「項目」に変換する前に、「作成」データ・ソースへのウィジェットのデータソースを設定する必要があると考えてい

おかげ

答えて

2

右側のプロパティエディタで、ウィジェットのデータソースをcreate datasourceに変更することができます。データソースのバインディングをクリックし、[[データソース名](作成)]を選択します。 (screenshot

あなたがプログラム的に設定することであろう通常のデータソースにバインドされたウィジェットを維持したい場合は、代替オプション:

widget.datasource.modes.create.item.Email = (newValue) ? newValue.PrimaryEmail : null; 

Here is further documentation for accessing the create datasource through scripting.

+0

ありがとう、それはトリックでした。 – Scott

1

+0

うーん、わからないどのようにそれを行うためにウィジェットとして.datasource.Create()は機能しません。 – Scott

+0

あなたのウィジェットは、 "Inherited:YourDataSource"のようなデータソースプロパティを持つ必要があります。それが継承しているコンテナウィジェットを見つけたら、データソース "YourDataSource"が必要です。これをクリックすると、他のオプションのうち、 "YourDataSource(Create)"が表示されます。これは、選択する必要のあるデータソースです。 –

+0

ウィジェットがデータソースのドラフトにバインドされることを意図していない可能性があります。ほとんどの場合、それはあなたが望むものですが、これがスクリプトであれば、アプローチは次のようになります。 var datasource = widget.datasource.modes.create; datasource.item.Email =(newValue)? newValue.PrimaryEmail:null; 明白にするために、余分な変数は明らかに必要ではありません。私はこのアプローチには注意したいと思いますが、app.datasources.DataSourceName.modes.createを明示的に使用することをお勧めします。ただし、ウィジェットのデータソースに結び付けておくことが重要です。 –

関連する問題