この文章は Salesforce 機械翻訳システムを使用して翻訳されました。詳細はこちらをご参照ください。
英語に切り替える

もうひとこと: フィード項目を作成するコードについて

DeliveryTrakr Web アプリケーションのコードでは、shipment.js ファイルにさまざまなフィード項目を作成するロジックが含まれています。

キャンバスフィード項目の作成

onGetPayload 関数の次のコードスニペットは、CanvasPost 型のフィード項目を作成します。これでわかるように、すべての投稿値を動的に設定し、namespacedeveloperName などのキャンバスアプリケーションに関する情報を署名付き要求から取得します。また、URL に付加されキャンバスアプリケーションのフィード項目で使用されるパラメータを渡すこともできます。
1else if ("approval" === action) 
2{
3    p.feedItemType = "CanvasPost";
4    p.auxText = "Please confirm this shipment status: " + 
5        shipments[shipment].description;
6    p.namespace =  sr.context.application.namespace;
7    p.developerName =  sr.context.application.developerName;
8    p.thumbnailUrl = "https://cdn1.iconfinder.com/data/icons/
9        VISTA/project_managment/png/48/deliverables.png";
10    p.parameters =  "{\"shipment\":\"" + shipment + "\"}";
11    p.title = shipments[shipment].description;
12    p.description = "This is a travel shipment for Shipment - " + 
13        shipments[shipment].description + 
14        ".  Click the link to open the canvas app.";
15}

[共有] ボタンの有効化

次のコードスニペットは、draw 関数の一部です。このステートメントをコールすると、[共有] ボタンが有効化されます。これにより、キャンバスアプリケーションの必須要素をユーザがすべて選択するまで、フィード項目を作成できなくなります。
1$$.client.publish(sr.client, {
2    name : 'publisher.setValidForSubmit', 
3    payload : true});

フィード項目の公開

ユーザが [共有] ボタンをクリックすると、次のコードスニペットにより、フィード項目がフィードに公開されます。作成されるフィード項目の種別は、選択する種別 (テキスト、リンク、キャンバス) によって異なります。
1$$.client.publish(sr.client, {name : 'publisher.setPayload', 
2    payload : p});