Lightning Out: Components for the Rest of the World

3 655 vues

Publié le

Lightning Components form the basis of the Salesforce UIs, including the newly announced Lightning Experience. But what do you do when you can?t migrate everything into Salesforce, or you want to use Salesforce in an external site and find building everything yourself daunting? With Lightning Out you can now use the components from Salesforce, our partners, and your own custom components in most any remote site. Join the team that built this technology to see what it can do for you.

Publié dans : Technologie
  • Soyez le premier à commenter

Lightning Out: Components for the Rest of the World

  1. 1. Lightning Out Components for the Rest of the World ​ Skip Sauls ​ Director of Product Management ​ ​ @SkipSauls ​  ​ Doug Chasman ​ Distinguished Engineer, Architect ​ ​ @dougchasman ​ 
  2. 2. ​ Safe harbor statement under the Private Securities Litigation Reform Act of 1995: ​ This presentation may contain forward-looking statements that involve risks, uncertainties, and assumptions. If any such uncertainties materialize or if any of the assumptions proves incorrect, the results of, inc. could differ materially from the results expressed or implied by the forward-looking statements we make. All statements other than statements of historical fact could be deemed forward- looking, including any projections of product or service availability, subscriber growth, earnings, revenues, or other financial items and any statements regarding strategies or plans of management for future operations, statements of belief, any statements concerning new, planned, or upgraded services or technology developments and customer contracts or use of our services. ​ The risks and uncertainties referred to above include – but are not limited to – risks associated with developing and delivering new functionality for our service, new products and services, our new business model, our past operating losses, possible fluctuations in our operating results and rate of growth, interruptions or delays in our Web hosting, breach of our security measures, the outcome of any litigation, risks associated with completed and any possible mergers and acquisitions, the immature market in which we operate, our relatively limited operating history, our ability to expand, retain, and motivate our employees and manage our growth, new releases of our service and successful customer deployment, our limited history reselling products, and utilization and selling to larger enterprise customers. Further information on potential factors that could affect the financial results of, inc. is included in our annual report on Form 10-K for the most recent fiscal year and in our quarterly report on Form 10-Q for the most recent fiscal quarter. These documents and others containing important disclosures are available on the SEC Filings section of the Investor Information section of our Web site. ​ Any unreleased services or features referenced in this or other presentations, press releases or public statements are not currently available and may not be delivered on time or at all. Customers who purchase our services should make the purchase decisions based upon features that are currently available., inc. assumes no obligation and does not intend to update these forward-looking statements. Safe Harbor
  3. 3. Introducing Lightning Out
  4. 4. Platforms Lightning Out
  5. 5. Frameworks, Toolkits, and Libraries Lightning Out ? XXX
  6. 6. ​ Lightning Components can now be used in nearly any remote web container ​ Requirements •  Valid Salesforce session ID (SID), for example from OAuth •  Ability to modify the generated markup for the remote site ​ Supports •  Secure browser (HTTPS) •  Cross-Origin Resource Sharing (CORS) ​ Lightning Components for Visualforce is powered by Lightning Out ​ Availability •  Lightning Components for Visualforce is GA in Winter ‘16 •  Lightning Out is in pre-release in Winter ‘16, with plans to be GA in Spring ‘16 Overview Lightning Out
  7. 7. ​ Lightning Out is the technology that allows Lightning Components to be used in Visualforce ​ Differences & Considerations •  Does not require CORS •  Does not require a Connected App •  Styles are from Aloha/VF and may differ from Salesforce1, Lightning Experience, or standalone apps ​ Uses •  Use components directly in Visualforce, integrated on the client via JavaScript, Lightning Events, and more •  Migrate Visualforce pages and components to Lightning Components, while retaining use in Aloha •  Build “hybrid” pages that leverage the best of Lightning Components and Visualforce Lightning Components for Visualforce (LC4VF) Lightning Out
  8. 8. ​ Lightning Out can be up and running with very little effort: 1.  Configure the remote site for CORS and a Connected App with Oauth 2.  Create a Lightning App that extends ltng:outApp with dependencies for components 3.  Include lightning.out.js in the remote site 4.  Authenticate with Salesforce OAuth using the Consumer Key 5.  Initialize Lightning App with $Lightning.use, passing in the OAuth token 6.  Add the components to the remote site using $Lightning.createComponent Usage Lightning Out
  9. 9. ​ Lightning Components can be included on the remote site with as few as three lines of code: Usage Lightning Out <script src=""></script> $Lightning.use("ltngx:lotest", function() {}, oauth.instance_url, oauth.access_token); $Lightning.createComponent("ltngx:chatter", {}, "chatterFeed”, function(cmp) {});
  10. 10. Demos
  11. 11. Q&A
  12. 12. Thank you
  13. 13. ​ The following slides were getting too detailed…
  14. 14. ​ Cross-Origin Resource Sharing (CORS) provides a safe mechanism for enabling access across domains. Lightning Out requires that an origin for the remote site to be added to the CORS whitelist using Setup. 1.  Setup -> Administer -> Security Controls -> CORS -> New 2.  Enter the origin URL pattern, e.g., 3.  Save Usage – Configure CORS Lightning Out
  15. 15. ​ Lightning Out requires a valid SFDC SID, e.g., as obtained by OAUTH. A Connected App provides the 1.  Setup -> Build-> Create -> Apps -> Connected Apps -> New 2.  Enter the name, etc. and toggle Enable OAuth Settings 3.  Enter the callback URL, e.g., 4.  Select the OAuth Scopes, e.g., Full 5.  Save Usage – Configure Connected Apps Lightning Out
  16. 16. ​ The OAuth Consumer Key will be used on the client when authenticating. 1.  Setup -> Build-> Create -> Apps -> Connected Apps -> appname -> Edit 2.  Copy the Consumer Key Usage – Configure Connected Apps Lightning Out
  17. 17. ​ Lightning Out is included in the remote site with a very small JavaScript file, lightning.out.js, served from the SFDC org that you are accessing. This should be included on any page that will include Lightning Components: Usage Lightning Out <script src=""></script>
  18. 18. ​ Lightning Out requires a valid SFDC SID, but it does not provide this capability OOTB in the early access release. A library such as force.js Usage Lightning Out <script src=""></script>
  19. 19. Lightning Out ​ Usage <script src=""></script> $Lightning.use("ltngx:lotest", function() {}, oauth.instance_url, oauth.access_token); $Lightning.createComponent("ltngx:chatter", {}, "chatterFeed”, function(cmp) {});
  20. 20. Lightning Out ​ Usage <script src=""></script> $Lightning.use("ltngx:lotest", function() {}, oauth.instance_url, oauth.access_token); $Lightning.createComponent("ltngx:chatter", {}, "chatterFeed”, function(cmp) {});
  21. 21. Salesforce Everywhere Lightning Out
  22. 22. Salesforce Heroku – Node.js Lightning Out
  23. 23. Microsoft SharePoint Lightning Out
  24. 24. SAP HANA – UI5 Lightning Out
  25. 25. Salesforce - Visualforce Lightning Out
  26. 26. RedHat OpenShift - PHP Lightning Out