Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Dynamic Interactions - Move fast then improve t...

Dynamic Interactions - Move fast then improve things

Slide deck from my French Touch Dreamin' 2025 talk on Dynamic Interactions in Salesforce.

Avatar for Keir Bowden

Keir Bowden

January 05, 2026
Tweet

More Decks by Keir Bowden

Other Decks in Technology

Transcript

  1. Features •Event based, no-code component communication •Source publishes event, targets

    react automatically •Declarative wiring through simple field mappings •Components are independent, context is shared
  2. How they work <targetConfig targets=”lightning__AppPage”> <property name=”parentAccountId”/> <property name=”parentAccountName”/> </targetConfig>

    accountPicker <event name=”accountSelected”> <schema> { “accountId:{“type”:”string”}, “accountName”:{“type”:”string”} } </schema> </event> accountPicker.js-meta.xml accountContacts accountContacts.js-meta.xml
  3. How they work accountSelected Event accountId: “001JX00000uajTCYAY” accountName: “Bob Buzzard

    Inc” Property Update parentAccountId = “001JX00000uajTCYAY” parentAccountName = “Bob Buzzard Inc”
  4. Benefits •Rich, modular pages without code (or flow!) •Ease of

    maintenance and evolution •Reuse components across applications •Decoupled event handling
  5. Idempotency Sending the same request multiple times will have the

    same effect as sending it once itemAdded Event productId: “01tJX00000Lk19tYAB” price: “699” Property Update newItemId = “01tJX00000Lk19tYAB” newItemPrice = “699” Property Values newItemId = undefined newItemPrice = undefined Property Values newItemId = “01tJX00000Lk19tYAB” newItemPrice = “699” itemAdded Event productId: “01tJX00000Lk19tYAB” price: “699”
  6. Coherence All parts of the system know a change happened,

    even if the value stayed the same itemAdded Event productId: {id: 1, value: “01t..”} price: {id: 1, value: 699”} Property Update newItemId = {id: 1, value: “01t..”} newItemPrice = {id: 1, value: 699”} Property Values newItemId = undefined newItemPrice = undefined Property Values newItemId = {id: 1, value: “01t..”} newItemPrice = {id: 1, value: 699”} itemAdded Event productId: {id: 2, value: “01t..”} price: {id: 2, value: 699”} Property Update newItemId = {id: 2, value: “01t..”} newItemPrice = {id: 2, value: 699”}