{"id":657,"date":"2018-01-21T20:36:09","date_gmt":"2018-01-21T12:36:09","guid":{"rendered":"http:\/\/www.ponybai.com\/?p=657"},"modified":"2018-01-21T20:36:09","modified_gmt":"2018-01-21T12:36:09","slug":"lightning-%e5%ba%94%e7%94%a8%e7%a8%8b%e5%ba%8f%ef%bc%882%ef%bc%89","status":"publish","type":"post","link":"http:\/\/www.ponybai.com\/?p=657","title":{"rendered":"Lightning-\u5e94\u7528\u7a0b\u5e8f\uff082\uff09"},"content":{"rendered":"<h1>\u4e3a\u7528\u6237\u754c\u9762\u6709\u6761\u4ef6\u5730\u5448\u73b0Visualforce\u9875\u9762<\/h1>\n<p>\u5728\u4e0a\u4e00\u6b65\u4e2d\uff0c\u6211\u4eec\u8ba9\u670d\u52a1\u5668\u4eceVisualforce\u66f4\u65b0\u6807\u51c6\u6837\u5f0f\u8868\u3002\u867d\u7136\u9875\u9762\u770b\u8d77\u6765\u4e0d\u9519\uff0c\u4f46\u53ea\u8981\u505a\u4e00\u70b9\u5de5\u4f5c\uff0c\u5c31\u53ef\u4ee5\u66f4\u63a5\u8fd1Lightning Experience\u7684\u5916\u89c2\u3002\u6240\u4ee5\u8fd9\u4e2a\u7ec3\u4e60\u6211\u4eec\u5c06\u4f1a\uff1a<\/p>\n<ul>\n<li>\u786e\u5b9a\u7528\u6237\u6b63\u5728\u4f7f\u7528\u7684UX\u73af\u5883\uff08Salesforce Classic\u6216Lightning Experience\uff09<\/li>\n<li>\u5c06\u6761\u4ef6\u5448\u73b0\u903b\u8f91\u6dfb\u52a0\u5230\u9875\u9762\u4ee5\u63d0\u4f9b\u6765\u81eaSLDS\u7684\u5176\u4ed6\u6837\u5f0f<\/li>\n<li>\u4f7f\u7528SLDS\u4e2d\u7684\u5176\u4ed6\u7c7b\u6765\u8c03\u6574\u9875\u9762\u5143\u7d20<\/li>\n<\/ul>\n<h3><a id=\"part-1add-a-check-for-the-user-theme-to-the-apex-controller\" class=\"anchor\" href=\"https:\/\/trailhead.salesforce.com\/trails\/lex_dev\/projects\/workshop-lightning-programmatic\/steps\/programmatic-step-2#part-1add-a-check-for-the-user-theme-to-the-apex-controller\" aria-hidden=\"true\"><\/a>\u7b2c1\u90e8\u5206 &#8211; \u5c06\u7528\u6237\u4e3b\u9898\u7684\u68c0\u67e5\u6dfb\u52a0\u5230Apex\u63a7\u5236\u5668<\/h3>\n<p>\u5f53\u7528\u6237\u5728Salesforce\u4e2d\u8bf7\u6c42\u9875\u9762\u65f6\uff0c\u7cfb\u7edf\u53ef\u4ee5\u8bc6\u522b\u7528\u6237\u662f\u5904\u4e8eSalesforce Classic\u8fd8\u662fLightning Experience\u3002\u6709\u4e86\u8fd9\u4e9b\u77e5\u8bc6\uff0c\u6211\u4eec\u53ef\u4ee5\u5305\u542b\u6216\u6392\u9664\u9875\u9762\u7684\u533a\u57df\uff0c\u4ee5\u786e\u4fdd\u7528\u6237\u7684\u6b63\u786e\u4f53\u9a8c\u3002<\/p>\n<ol>\n<li>\u5728\u5f00\u53d1\u4eba\u5458\u63a7\u5236\u53f0\u4e2d\uff0c\u5355\u51fb <strong>File &gt; Open &gt; Classes<\/strong> \u7136\u540e\u9009\u62e9<strong>DreamhouseProspects\u00a0<\/strong>Apex\u00a0\u7c7b\uff0c\u7136\u540e\u5355\u51fb <strong>Open<\/strong>.<\/li>\n<li><code>\u5728public String sortOrder {set; get;}<\/code> \u884c\uff0c\u6dfb\u52a0\u4e0b\u9762\u7684\u65b9\u6cd5\u6765\u68c0\u6d4b\u7528\u6237\u7684\u5f53\u524d\u4e3b\u9898\uff1a\n<pre class=\"line-numbers code-toolbar language-java\"><code class=\"  language-java\"><span class=\"token keyword\">public<\/span> Boolean <span class=\"token function\">getIsClassic<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span>\n    <span class=\"token keyword\">return<\/span> <span class=\"token punctuation\">(<\/span>UserInfo<span class=\"token punctuation\">.<\/span><span class=\"token function\">getUiThemeDisplayed<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token operator\">==<\/span> <span class=\"token string\">'Theme3'<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\n<span class=\"token punctuation\">}<\/span>\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">\u5982\u679c\u7528\u6237\u5904\u4e8eSalesforce Classic\u4e2d\uff0c\u6b64\u65b9\u6cd5\u5c06\u8fd4\u56detrue\uff0c\u5982\u679c\u7528\u6237\u5904\u4e8eLightning Experience\u4e2d\uff0c\u5219\u8fd4\u56defalse\u3002<\/div>\n<\/div>\n<\/li>\n<li>Apex\u7c7b\u73b0\u5728\u5e94\u8be5\u662f\u8fd9\u6837\u7684\uff1a\n<pre class=\"line-numbers code-toolbar language-java\"><code class=\"  language-java\"><span class=\"token keyword\">public<\/span> with sharing <span class=\"token keyword\">class<\/span> <span class=\"token class-name\">DreamhouseProspects<\/span> <span class=\"token punctuation\">{<\/span>\n    <span class=\"token keyword\">public<\/span> String sortOrder <span class=\"token punctuation\">{<\/span>set<span class=\"token punctuation\">;<\/span> get<span class=\"token punctuation\">;<\/span><span class=\"token punctuation\">}<\/span>\n\n    <span class=\"token keyword\">public<\/span> Boolean <span class=\"token function\">getIsClassic<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span>\n        <span class=\"token keyword\">return<\/span> <span class=\"token punctuation\">(<\/span>UserInfo<span class=\"token punctuation\">.<\/span><span class=\"token function\">getUiThemeDisplayed<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token operator\">==<\/span> <span class=\"token string\">'Theme3'<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\n    <span class=\"token punctuation\">}<\/span>\n\n    <span class=\"token keyword\">public<\/span> List<span class=\"token operator\">&lt;<\/span>Lead<span class=\"token operator\">&gt;<\/span> <span class=\"token function\">getLeads<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span>\n        <span class=\"token keyword\">if<\/span> <span class=\"token punctuation\">(<\/span>sortOrder <span class=\"token operator\">==<\/span> null<span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span>\n            sortOrder <span class=\"token operator\">=<\/span> <span class=\"token string\">'LastName'<\/span><span class=\"token punctuation\">;<\/span>\n        <span class=\"token punctuation\">}<\/span>        \n        <span class=\"token keyword\">return<\/span> Database<span class=\"token punctuation\">.<\/span><span class=\"token function\">query<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">'SELECT Description,Email,FirstName,Id,LastName,Phone FROM Lead WHERE Company=\\'Dreamhouse\\' ORDER BY '<\/span><span class=\"token operator\">+<\/span>sortOrder<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\n    <span class=\"token punctuation\">}<\/span>\n\n    <span class=\"token keyword\">public<\/span> pageReference <span class=\"token function\">sortList<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span>\n        <span class=\"token function\">getLeads<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\n        <span class=\"token keyword\">return<\/span> null<span class=\"token punctuation\">;<\/span>\n    <span class=\"token punctuation\">}<\/span>\n<span class=\"token punctuation\">}<\/span>\n<\/code><\/pre>\n<\/li>\n<li>\u4fdd\u5b58Apex\u7c7b\u5e76\u5173\u95ed\u5176\u5728\u5f00\u53d1\u8005\u63a7\u5236\u53f0\u4e2d\u7684\u6807\u7b7e\u3002<\/li>\n<\/ol>\n<h3><a id=\"part-2add-dynamic-blocks-based-on-the-users-theme\" class=\"anchor\" href=\"https:\/\/trailhead.salesforce.com\/trails\/lex_dev\/projects\/workshop-lightning-programmatic\/steps\/programmatic-step-2#part-2add-dynamic-blocks-based-on-the-users-theme\" aria-hidden=\"true\"><\/a>\u7b2c2\u90e8\u5206 &#8211; \u6839\u636e\u7528\u6237\u7684\u4e3b\u9898\u6dfb\u52a0\u52a8\u6001\u5757<\/h3>\n<ol>\n<li>\u5728\u5f00\u53d1\u8005\u63a7\u5236\u53f0\u4e2d\uff0c\u901a\u8fc7\u5728\u6253\u5f00\u7684&lt;apex\uff1apage&gt;\u6807\u8bb0\u4e4b\u540e\u6dfb\u52a0\u4e00\u4e2a\u65b0\u884c\uff0c\u5c06\u6307\u4ee4\u6dfb\u52a0\u5230DreamHouseLeads.vfp\u9875\u9762\uff1a\n<pre class=\"line-numbers code-toolbar language-java\"><code class=\"  language-java\"><span class=\"token operator\">&lt;<\/span>apex<span class=\"token operator\">:<\/span>slds <span class=\"token operator\">\/<\/span><span class=\"token operator\">&gt;<\/span>\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">\n<p>\u8fd9\u4e2a\u7b80\u5355\u7684\u6807\u7b7e\u544a\u8bc9\u9875\u9762\u5305\u542bSalesforce Lightning\u8bbe\u8ba1\u7cfb\u7edf\u4e2d\u7684CSS\uff0c\u4ee5\u4fbf\u6211\u4eec\u53ef\u4ee5\u5c06SLDS\u4e2d\u7684\u6837\u5f0f\u5e94\u7528\u4e8e\u5404\u4e2a\u9875\u9762\u5143\u7d20\uff0c\u6216\u8005\u4f7f\u7528SLDS\u4e2d\u7684\u6807\u8bb0\u3002\u4ee5\u524d\uff0c\u60a8\u9700\u8981\u521b\u5efa\u6b64CSS\u7684\u81ea\u5b9a\u4e49\u7248\u672c\uff0c\u5e76\u5c06\u5176\u4f5c\u4e3a\u9759\u6001\u8d44\u6e90\u5305\u542b\u5728\u60a8\u7684\u7ec4\u7ec7\u4e2d\u3002\u4f46\u662f\u8fd9\u6709\u4e00\u4e2a\u7f3a\u70b9\uff0c\u5c31\u662f\u771f\u6b63\u7684\u9759\u6001 &#8211; \u6240\u4ee5\u5982\u679cSLDS\u56e2\u961f\u5bf9CSS\u8fdb\u884c\u4e86\u66f4\u6539\uff0c\u90a3\u4e48\u60a8\u7684\u9759\u6001\u8d44\u6e90\u5c31\u4e0d\u4f1a\u6536\u5230\u8fd9\u4e9b\u66f4\u6539\u3002\u91c7\u7528\u8fd9\u79cd\u65b0\u65b9\u6cd5\uff0c\u60a8\u603b\u80fd\u4eceSLDS\u63a5\u6536\u6700\u65b0\uff0c\u6700\u597d\u7684CSS\u3002<\/p>\n<p>\u8bf7\u8bb0\u4f4f\uff0clightningStylesheets =\u201ctrue\u201d\u4e0d\u4f1a\u5c06SLDS\u6837\u5f0f\u8868\u6dfb\u52a0\u5230\u9875\u9762\uff0c\u800c\u662f\u5c06\u6807\u51c6\u6837\u5f0f\u8868\u4eceVisualforce\u66f4\u6539\u4e3a\u50cfSLDS\u4e00\u6837\u7684\u201c\u5916\u89c2\u201d\u3002<\/p>\n<\/div>\n<\/div>\n<\/li>\n<li>\u5c06<code>rendered=\"{! !isClassic}\"<\/code>\u00a0\u6dfb\u52a0\u5230\u00a0<code>&lt;apex:slds \/&gt;<\/code>\u00a0\u6807\u7b7e\u4e2d:\n<pre class=\"line-numbers code-toolbar language-java\"><code class=\"  language-java\"><span class=\"token operator\">&lt;<\/span>apex<span class=\"token operator\">:<\/span>slds rendered<span class=\"token operator\">=<\/span><span class=\"token string\">\"{! !isClassic}\"<\/span> <span class=\"token operator\">\/<\/span><span class=\"token operator\">&gt;<\/span>\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">\u8be5\u9875\u9762\u73b0\u5728\u5c06\u68c0\u67e5\u7531\u6211\u4eec\u521b\u5efa\u7684Apex\u65b9\u6cd5\u8fd4\u56de\u7684\u503c\uff0c\u4ee5\u68c0\u67e5\u7528\u6237\u7684\u73af\u5883\u3002\u6362\u53e5\u8bdd\u8bf4\uff0c{\uff01isClassic}\u5c06\u8bc4\u4f30\u4e3atrue\u6216false\u3002\u5728isClassic\u524d\u52a0\u4e0a\u611f\u53f9\u53f7\u662f\u8bf4\u201c\u4e0d\u201d\u7684\u7a0b\u5e8f\u5316\u65b9\u5f0f\u3002\u5982\u679c\u7528\u6237\u5904\u4e8e\u7ecf\u5178\u6a21\u5f0f\uff0c\u5219\u8868\u8fbe\u5f0f\u5448\u73b0=\u201c{\uff01\uff01isClassic}\u201d\uff0c\u5c06\u5bfc\u81f4&lt;apex\uff1aslds rendered =\u201cfalse\u201d&gt;\uff0c\u4f46\u662f&lt;apex\uff1aslds rendered =\u201ctrue\u201d&gt; \u3002<\/div>\n<\/div>\n<p>\u56e0\u6b64\uff0c\u5982\u679c\u7528\u6237\u5728Lightning\u4e2d\uff0c\u5219\u53ef\u4ee5\u4f7f\u7528\u6765\u81eaSLDS\u7684\u6837\u5f0f\u548c\u6807\u8bb0\uff0c\u800c\u5728Classic\u4e2d\uff0c\u8be5\u9875\u9762\u4ecd\u7136\u50cf\u4ee5\u524d\u4e00\u6837\u3002<\/li>\n<\/ol>\n<h3><a id=\"part-3add-the-slds-header\" class=\"anchor\" href=\"https:\/\/trailhead.salesforce.com\/trails\/lex_dev\/projects\/workshop-lightning-programmatic\/steps\/programmatic-step-2#part-3add-the-slds-header\" aria-hidden=\"true\"><\/a>\u7b2c3\u90e8\u5206 &#8211; \u6dfb\u52a0SLDS\u6807\u9898<\/h3>\n<p>\u9875\u9762\u7684\u81ea\u52a8\u6837\u5f0f\u770b\u8d77\u6765\u76f8\u5f53\u4e0d\u9519\uff0c\u4f46\u9875\u9762\u6807\u9898\u4e0eLightning Experience\u4e2d\u7684\u5176\u4ed6\u9875\u9762\u4e0d\u5b8c\u5168\u76f8\u540c\u3002\u8bf7\u6ce8\u610f\uff0c\u5b83\u7f3a\u5c11\u6807\u9898\u65c1\u8fb9\u7684\u6807\u51c6\u56fe\u6807\uff0c\u9009\u62e9\u5217\u8868\u770b\u8d77\u6765\u50cf\u6807\u51c6\u6d4f\u89c8\u5668\u9009\u62e9\u3002\u6b64\u5916\uff0c\u9009\u62e9\u548c\u6392\u5e8f\u6309\u94ae\u592a\u9760\u8fd1\u8868\u683c\u3002\u5982\u679c\u6ca1\u5173\u7cfb\uff0c\u90a3\u5c31\u5de7\u5999\u5730\u79fb\u52a8\u3002\u4e3a\u4e86\u8fd9\u4e2a\u9879\u76ee\u7684\u76ee\u7684\uff0c\u8ba9\u6211\u4eec\u7ee7\u7eed\u524d\u8fdb\uff0c\u4f7f\u4e4b\u4e0eLightning Experience\u5b8c\u5168\u5339\u914d\u3002<\/p>\n<ol>\n<li>\u4ea4\u6362&lt;apex\uff1asectionHeader&gt;\u548c&lt;apex\uff1aform&gt;\u5143\u7d20\uff08\u5728\u7b2c4\u884c\u548c\u7b2c5\u884c\u5de6\u53f3\uff09\u3002\n<p>\u4e3a\u4e86\u6709\u6761\u4ef6\u5730\u4f20\u9012\u9875\u9762\u7684\u5143\u7d20\uff0c\u6211\u4eec\u9700\u8981\u80fd\u591f\u7528&lt;apex\uff1aoutputPanel&gt;\u6807\u7b7e\u5305\u88c5\u5b8c\u6574\u7684\u5143\u7d20\u3002\u6240\u4ee5\uff0c\u6211\u4eec\u521a\u521a\u5728\u7a97\u4f53\u4e2d\u79fb\u52a8\u4e86\u8282\u6807\u9898\uff0c\u4ee5\u4fbf\u6211\u4eec\u53ef\u4ee5\u7528New\u6309\u94ae\uff0c\u9009\u62e9\u5217\u8868\u548c\u6392\u5e8f\u6309\u94ae\u5c06\u5b83\u4eec\u5305\u88c5\u5728\u4e00\u8d77\u3002<\/li>\n<li>\u4f7f\u7528&lt;apex\uff1aoutputPanel rendered =\u201c{\uff01isClassic}\u201d&gt; &#8230; &lt;\/ apex\uff1aoutputPanel&gt;\u5c06\u6574\u4e2a\u4ee3\u7801\u4ece&lt;apex\uff1asectionHeader&gt;\u5305\u88c5\u5230&lt;apex\uff1acommandButton&gt;\uff08\u4ece\u7b2c5-14\u884c\u5f00\u59cb\uff09\u3002\u4f60\u7684\u4ee3\u7801\u73b0\u5728\u5e94\u8be5\u662f\u8fd9\u6837\u7684\uff1a\n<pre class=\"line-numbers code-toolbar language-java\"><code class=\"  language-java\"><span class=\"token operator\">&lt;<\/span>apex<span class=\"token operator\">:<\/span>page controller<span class=\"token operator\">=<\/span><span class=\"token string\">\"DreamhouseProspects\"<\/span> lightningStylesheets<span class=\"token operator\">=<\/span><span class=\"token string\">\"true\"<\/span><span class=\"token operator\">&gt;<\/span>\n    <span class=\"token operator\">&lt;<\/span>apex<span class=\"token operator\">:<\/span>slds rendered<span class=\"token operator\">=<\/span><span class=\"token string\">\"{! !isClassic}\"<\/span> <span class=\"token operator\">\/<\/span><span class=\"token operator\">&gt;<\/span>\n    <span class=\"token operator\">&lt;<\/span>apex<span class=\"token operator\">:<\/span>pageBlock <span class=\"token operator\">&gt;<\/span>\n        <span class=\"token operator\">&lt;<\/span>apex<span class=\"token operator\">:<\/span>form <span class=\"token operator\">&gt;<\/span>\n            <span class=\"token operator\">&lt;<\/span>apex<span class=\"token operator\">:<\/span>outputPanel rendered<span class=\"token operator\">=<\/span><span class=\"token string\">\"{!isClassic}\"<\/span><span class=\"token operator\">&gt;<\/span>\n                <span class=\"token operator\">&lt;<\/span>apex<span class=\"token operator\">:<\/span>sectionHeader title<span class=\"token operator\">=<\/span><span class=\"token string\">\"Leads\"<\/span> subtitle<span class=\"token operator\">=<\/span><span class=\"token string\">\"Home\"<\/span><span class=\"token operator\">\/<\/span><span class=\"token operator\">&gt;<\/span>\n                <span class=\"token operator\">&lt;<\/span>div style<span class=\"token operator\">=<\/span><span class=\"token string\">\"text-align:center;\"<\/span><span class=\"token operator\">&gt;<\/span>\n                    <span class=\"token operator\">&lt;<\/span>apex<span class=\"token operator\">:<\/span>commandButton action<span class=\"token operator\">=<\/span><span class=\"token string\">\"{!URLFOR($Action.Lead.New)}\"<\/span> value<span class=\"token operator\">=<\/span><span class=\"token string\">\"New\"<\/span><span class=\"token operator\">\/<\/span><span class=\"token operator\">&gt;<\/span>\n                <span class=\"token operator\">&lt;<\/span><span class=\"token operator\">\/<\/span>div<span class=\"token operator\">&gt;<\/span>\n                <span class=\"token operator\">&lt;<\/span>apex<span class=\"token operator\">:<\/span>outputLabel value<span class=\"token operator\">=<\/span><span class=\"token string\">\"Sort: \"<\/span> <span class=\"token keyword\">for<\/span><span class=\"token operator\">=<\/span><span class=\"token string\">\"sortList\"<\/span> <span class=\"token operator\">\/<\/span><span class=\"token operator\">&gt;<\/span>\n                <span class=\"token operator\">&lt;<\/span>apex<span class=\"token operator\">:<\/span>selectList value<span class=\"token operator\">=<\/span><span class=\"token string\">\"{! sortOrder}\"<\/span> size<span class=\"token operator\">=<\/span><span class=\"token string\">\"1\"<\/span> id<span class=\"token operator\">=<\/span><span class=\"token string\">\"sortList\"<\/span><span class=\"token operator\">&gt;<\/span>\n                    <span class=\"token operator\">&lt;<\/span>apex<span class=\"token operator\">:<\/span>selectOption itemvalue<span class=\"token operator\">=<\/span><span class=\"token string\">\"LastName\"<\/span> <span class=\"token operator\">\/<\/span><span class=\"token operator\">&gt;<\/span>\n                    <span class=\"token operator\">&lt;<\/span>apex<span class=\"token operator\">:<\/span>selectOption itemvalue<span class=\"token operator\">=<\/span><span class=\"token string\">\"FirstName\"<\/span> <span class=\"token operator\">\/<\/span><span class=\"token operator\">&gt;<\/span>\n                <span class=\"token operator\">&lt;<\/span><span class=\"token operator\">\/<\/span>apex<span class=\"token operator\">:<\/span>selectList<span class=\"token operator\">&gt;<\/span>\n                <span class=\"token operator\">&lt;<\/span>apex<span class=\"token operator\">:<\/span>commandButton value<span class=\"token operator\">=<\/span><span class=\"token string\">\"Sort Table\"<\/span> action<span class=\"token operator\">=<\/span><span class=\"token string\">\"{!sortList}\"<\/span> reRender<span class=\"token operator\">=<\/span><span class=\"token string\">\"leads_list\"<\/span><span class=\"token operator\">\/<\/span><span class=\"token operator\">&gt;<\/span>\n            <span class=\"token operator\">&lt;<\/span><span class=\"token operator\">\/<\/span>apex<span class=\"token operator\">:<\/span>outputPanel<span class=\"token operator\">&gt;<\/span>\n            <span class=\"token operator\">&lt;<\/span>apex<span class=\"token operator\">:<\/span>pageBlockTable value<span class=\"token operator\">=<\/span><span class=\"token string\">\"{! leads }\"<\/span> var<span class=\"token operator\">=<\/span><span class=\"token string\">\"ct\"<\/span> id<span class=\"token operator\">=<\/span><span class=\"token string\">\"leads_list\"<\/span><span class=\"token operator\">&gt;<\/span>\n                <span class=\"token operator\">&lt;<\/span>apex<span class=\"token operator\">:<\/span>column headerValue<span class=\"token operator\">=<\/span><span class=\"token string\">\"First Name\"<\/span><span class=\"token operator\">&gt;<\/span>\n                    <span class=\"token operator\">&lt;<\/span>apex<span class=\"token operator\">:<\/span>outputLink value<span class=\"token operator\">=<\/span><span class=\"token string\">\"\/{! ct.Id}\"<\/span><span class=\"token operator\">&gt;<\/span><span class=\"token punctuation\">{<\/span><span class=\"token operator\">!<\/span> ct<span class=\"token punctuation\">.<\/span>FirstName <span class=\"token punctuation\">}<\/span><span class=\"token operator\">&lt;<\/span><span class=\"token operator\">\/<\/span>apex<span class=\"token operator\">:<\/span>outputLink<span class=\"token operator\">&gt;<\/span>\n                <span class=\"token operator\">&lt;<\/span><span class=\"token operator\">\/<\/span>apex<span class=\"token operator\">:<\/span>column<span class=\"token operator\">&gt;<\/span>\n                <span class=\"token operator\">&lt;<\/span>apex<span class=\"token operator\">:<\/span>column value<span class=\"token operator\">=<\/span><span class=\"token string\">\"{! ct.LastName }\"<\/span><span class=\"token operator\">\/<\/span><span class=\"token operator\">&gt;<\/span>\n                <span class=\"token operator\">&lt;<\/span>apex<span class=\"token operator\">:<\/span>column value<span class=\"token operator\">=<\/span><span class=\"token string\">\"{! ct.Email }\"<\/span><span class=\"token operator\">\/<\/span><span class=\"token operator\">&gt;<\/span>\n                <span class=\"token operator\">&lt;<\/span>apex<span class=\"token operator\">:<\/span>column value<span class=\"token operator\">=<\/span><span class=\"token string\">\"{! ct.Phone }\"<\/span><span class=\"token operator\">\/<\/span><span class=\"token operator\">&gt;<\/span>\n            <span class=\"token operator\">&lt;<\/span><span class=\"token operator\">\/<\/span>apex<span class=\"token operator\">:<\/span>pageBlockTable<span class=\"token operator\">&gt;<\/span>              \n        <span class=\"token operator\">&lt;<\/span><span class=\"token operator\">\/<\/span>apex<span class=\"token operator\">:<\/span>form<span class=\"token operator\">&gt;<\/span>\n    <span class=\"token operator\">&lt;<\/span><span class=\"token operator\">\/<\/span>apex<span class=\"token operator\">:<\/span>pageBlock<span class=\"token operator\">&gt;<\/span>\n<span class=\"token operator\">&lt;<\/span><span class=\"token operator\">\/<\/span>apex<span class=\"token operator\">:<\/span>page<span class=\"token operator\">&gt;<\/span>\n<\/code><\/pre>\n<\/li>\n<li>\u4fdd\u5b58\u9875\u9762\u5e76\u91cd\u65b0\u52a0\u8f7d\u5230\u6d4f\u89c8\u5668\u4e2d\u3002<br \/>\n<img decoding=\"async\" src=\"https:\/\/res.cloudinary.com\/hy4kyit2a\/image\/upload\/v1509046373\/doc\/trailhead\/staging\/team-trailhead_workshop-lightning-programmatic_en-us_img_2-lexleadslistnoheader_4ee532ceb88748908de8ca93476d340f.png\" alt=\"Leads list in Lightning Edition with no header\" \/><\/p>\n<p>\u60a8\u5df2\u7ecf\u4e22\u5931\u4e86\u6574\u4e2a\u9875\u9762\u6807\u9898\u548c\u6309\u94ae\uff0c\u56e0\u4e3a\u73b0\u5728\u53ea\u4f1a\u5728{\uff01isClassic}\u89e3\u6790\u4e3atrue\u65f6\u624d\u5448\u73b0\u3002\u6240\u4ee5\uff0c\u73b0\u5728\u6211\u4eec\u53ef\u4ee5\u6dfb\u52a0\u4e00\u4e2a\u5339\u914dLightning Experience\u7684\u9875\u9762\u6807\u9898\u3002<\/p>\n<p>\u867d\u7136\u6211\u4eec\u5b8c\u5168\u53ef\u4ee5\u521b\u5efa\u81ea\u5df1\u7684HTML\u6807\u8bb0\u548cCSS\uff0c\u4f46Visualforce\u5f00\u53d1\u4eba\u5458\u53ef\u4ee5\u505a\u7684\u66f4\u591a\uff0c\u6211\u4eec\u7684\u76ee\u6807\u662f\u786e\u4fdd\u9875\u9762\u770b\u8d77\u6765\u4e0eLightning Experience\u5b8c\u5168\u4e00\u6837\u3002\u8fd9\u6b63\u662fSalesforce UX\u56e2\u961f\u521b\u5efaSLDS\u7684\u539f\u56e0\u3002\u6211\u4eec\u53ef\u4ee5\u7b80\u5355\u5730\u5c06\u6807\u8bb0\u4eceSLDS\u590d\u5236\u5e76\u7c98\u8d34\u5230\u6211\u4eec\u7684\u9875\u9762\u4e2d\uff0c\u5e76\u4fee\u6539\u5176\u5360\u4f4d\u7b26\u5185\u5bb9\u4ee5\u663e\u793a\u6211\u4eec\u6240\u9700\u7684\u5185\u5bb9\u3002<\/li>\n<li>\u5bfc\u822a\u5230SLDS\u7ad9\u70b9\u3002\u70b9\u51fb\u4fa7\u8fb9\u680f\u4e2d\u7684\u7ec4\u4ef6\uff0c\u7136\u540e\u70b9\u51fb\u9875\u9762\u6807\u9898\uff0c\u719f\u6089\u6807\u8bb0\u548c\u6837\u5f0f\u3002\n<p>\u60a8\u770b\u5230\u7684\u6bcf\u4e2a\u7ec4\u4ef6\u7684\u9884\u89c8\u90fd\u662f\u7531\u60a8\u5728\u9884\u89c8\u4e0b\u65b9\u770b\u5230\u7684\u6807\u8bb0\u6784\u5efa\u7684\u3002\u8fd9\u662f\u60a8\u53ef\u4ee5\u7b80\u5355\u5730\u590d\u5236\/\u7c98\u8d34\uff0c\u7136\u540e\u4fee\u6539\u7684\u6807\u8bb0\u3002<\/p>\n<p>\u4f46\u662f\uff0c\u8bf7\u6ce8\u610f\uff0c\u5bf9\u4e8e\u6bcf\u4e2a\u7ec4\u4ef6\uff08\u5728\u672c\u4f8b\u4e2d\u4e3a\u9875\u7709\uff09\uff0c\u9875\u9762\u7684\u53f3\u4fa7\u90fd\u6709\u53d8\u4f53\u548c\u72b6\u6001\u3002\u8fd9\u4e9b\u662f\u6240\u9009\u7ec4\u4ef6\u7684\u4e0d\u540c\u7248\u672c\u3002\u5f53\u60a8\u9009\u62e9\u53d8\u4f53\u6216\u72b6\u6001\u65f6\uff0c\u793a\u4f8b\u6807\u8bb0\u4f1a\u66f4\u6539\u3002\u6240\u4ee5\u8bf7\u786e\u4fdd\u60a8\u6b63\u5728\u590d\u5236\u6240\u9700\u7684\u53d8\u4f53\u6216\u72b6\u6001\u3002<\/p>\n<p>\u4e3a\u4e86\u8ba9\u4f60\u66f4\u5bb9\u6613\uff0c\u6211\u4eec\u5df2\u7ecf\u590d\u5236\u4e86Object Home\u53d8\u4f53\uff0c\u5e76\u5bf9\u5176\u8fdb\u884c\u4e86\u4fee\u6539\u3002<\/li>\n<li>\u8fd4\u56de\u5230\u5f00\u53d1\u8005\u63a7\u5236\u53f0\uff0c\u5728\u6700\u540e\u4e00\u6b65\u6dfb\u52a0\u7684&lt;\/ apex\uff1aoutputPanel&gt;\uff08\u53ef\u80fd\u662f\u7b2c16\u884c\uff09\u4e4b\u540e\u7684\u65b0\u884c\u4e2d\u6dfb\u52a0\u4ee5\u4e0b\u4ee3\u7801\uff1a\n<pre class=\"line-numbers code-toolbar language-java\"><code class=\"  language-java\"><span class=\"token operator\">&lt;<\/span>apex<span class=\"token operator\">:<\/span>outputPanel rendered<span class=\"token operator\">=<\/span><span class=\"token string\">\"{! !isClassic}\"<\/span><span class=\"token operator\">&gt;<\/span>\n    <span class=\"token operator\">&lt;<\/span>div <span class=\"token keyword\">class<\/span><span class=\"token operator\">=<\/span><span class=\"token string\">\"slds-page-header\"<\/span><span class=\"token operator\">&gt;<\/span>\n        <span class=\"token operator\">&lt;<\/span>div <span class=\"token keyword\">class<\/span><span class=\"token operator\">=<\/span><span class=\"token string\">\"slds-grid\"<\/span><span class=\"token operator\">&gt;<\/span>\n            <span class=\"token operator\">&lt;<\/span>div <span class=\"token keyword\">class<\/span><span class=\"token operator\">=<\/span><span class=\"token string\">\"slds-col slds-has-flexi-truncate\"<\/span> xmlns<span class=\"token operator\">=<\/span><span class=\"token string\">\"http:\/\/www.w3.org\/2000\/svg\"<\/span> xmlns<span class=\"token operator\">:<\/span>xlink<span class=\"token operator\">=<\/span><span class=\"token string\">\"http:\/\/www.w3.org\/1999\/xlink\"<\/span><span class=\"token operator\">&gt;<\/span>\n                <span class=\"token operator\">&lt;<\/span>div <span class=\"token keyword\">class<\/span><span class=\"token operator\">=<\/span><span class=\"token string\">\"slds-media slds-no-space slds-grow\"<\/span><span class=\"token operator\">&gt;<\/span>\n                    <span class=\"token operator\">&lt;<\/span>div <span class=\"token keyword\">class<\/span><span class=\"token operator\">=<\/span><span class=\"token string\">\"slds-media__figure\"<\/span><span class=\"token operator\">&gt;<\/span>\n                        <span class=\"token operator\">&lt;<\/span>svg <span class=\"token keyword\">class<\/span><span class=\"token operator\">=<\/span><span class=\"token string\">\"slds-icon slds-icon-standard-user .slds-icon_small\"<\/span> aria<span class=\"token operator\">-<\/span>hidden<span class=\"token operator\">=<\/span><span class=\"token string\">\"true\"<\/span><span class=\"token operator\">&gt;<\/span>\n                            <span class=\"token operator\">&lt;<\/span>use xlink<span class=\"token operator\">:<\/span>href<span class=\"token operator\">=<\/span><span class=\"token string\">\"{!URLFOR($Asset.SLDS, 'assets\/icons\/standard-sprite\/svg\/symbols.svg#lead')}\"<\/span><span class=\"token operator\">&gt;<\/span><span class=\"token operator\">&lt;<\/span><span class=\"token operator\">\/<\/span>use<span class=\"token operator\">&gt;<\/span>\n                        <span class=\"token operator\">&lt;<\/span><span class=\"token operator\">\/<\/span>svg<span class=\"token operator\">&gt;<\/span>\n                    <span class=\"token operator\">&lt;<\/span><span class=\"token operator\">\/<\/span>div<span class=\"token operator\">&gt;<\/span>\n                    <span class=\"token operator\">&lt;<\/span>div <span class=\"token keyword\">class<\/span><span class=\"token operator\">=<\/span><span class=\"token string\">\"slds-media__body\"<\/span><span class=\"token operator\">&gt;<\/span>\n                        <span class=\"token operator\">&lt;<\/span>p <span class=\"token keyword\">class<\/span><span class=\"token operator\">=<\/span><span class=\"token string\">\"slds-text-title_caps slds-line-height_reset\"<\/span><span class=\"token operator\">&gt;<\/span>Lead<span class=\"token operator\">&lt;<\/span><span class=\"token operator\">\/<\/span>p<span class=\"token operator\">&gt;<\/span>\n                        <span class=\"token operator\">&lt;<\/span>h1 <span class=\"token keyword\">class<\/span><span class=\"token operator\">=<\/span><span class=\"token string\">\"slds-page-header__title slds-m-right_small slds-align-middle slds-truncate\"<\/span>\n                            title<span class=\"token operator\">=<\/span><span class=\"token string\">\"this should match the Record Title\"<\/span><span class=\"token operator\">&gt;<\/span>Home<span class=\"token operator\">&lt;<\/span><span class=\"token operator\">\/<\/span>h1<span class=\"token operator\">&gt;<\/span>\n                    <span class=\"token operator\">&lt;<\/span><span class=\"token operator\">\/<\/span>div<span class=\"token operator\">&gt;<\/span>\n                <span class=\"token operator\">&lt;<\/span><span class=\"token operator\">\/<\/span>div<span class=\"token operator\">&gt;<\/span>\n                <span class=\"token operator\">&lt;<\/span>div <span class=\"token keyword\">class<\/span><span class=\"token operator\">=<\/span><span class=\"token string\">\"slds-grid slds-grid_vertical-align-end slds-m-vertical_small\"<\/span><span class=\"token operator\">&gt;<\/span>\n                    <span class=\"token operator\">&lt;<\/span>div <span class=\"token keyword\">class<\/span><span class=\"token operator\">=<\/span><span class=\"token string\">\"slds-size_1-of-6 \"<\/span><span class=\"token operator\">&gt;<\/span>\n                        <span class=\"token operator\">&lt;<\/span>apex<span class=\"token operator\">:<\/span>outputLabel value<span class=\"token operator\">=<\/span><span class=\"token string\">\"Sort: \"<\/span> <span class=\"token keyword\">for<\/span><span class=\"token operator\">=<\/span><span class=\"token string\">\"sortListLightning\"<\/span> styleClass<span class=\"token operator\">=<\/span><span class=\"token string\">\"slds-form-element__label\"<\/span> <span class=\"token operator\">\/<\/span><span class=\"token operator\">&gt;<\/span>\n                        <span class=\"token operator\">&lt;<\/span>div <span class=\"token keyword\">class<\/span><span class=\"token operator\">=<\/span><span class=\"token string\">\"slds-select_container\"<\/span><span class=\"token operator\">&gt;<\/span>\n                            <span class=\"token operator\">&lt;<\/span>apex<span class=\"token operator\">:<\/span>selectList value<span class=\"token operator\">=<\/span><span class=\"token string\">\"{! sortOrder}\"<\/span> size<span class=\"token operator\">=<\/span><span class=\"token string\">\"1\"<\/span> id<span class=\"token operator\">=<\/span><span class=\"token string\">\"sortListLightning\"<\/span> styleClass<span class=\"token operator\">=<\/span><span class=\"token string\">\"slds-select\"<\/span><span class=\"token operator\">&gt;<\/span>\n                                <span class=\"token operator\">&lt;<\/span>apex<span class=\"token operator\">:<\/span>selectOption itemvalue<span class=\"token operator\">=<\/span><span class=\"token string\">\"LastName\"<\/span> <span class=\"token operator\">\/<\/span><span class=\"token operator\">&gt;<\/span>\n                                <span class=\"token operator\">&lt;<\/span>apex<span class=\"token operator\">:<\/span>selectOption itemvalue<span class=\"token operator\">=<\/span><span class=\"token string\">\"FirstName\"<\/span> <span class=\"token operator\">\/<\/span><span class=\"token operator\">&gt;<\/span>\n                            <span class=\"token operator\">&lt;<\/span><span class=\"token operator\">\/<\/span>apex<span class=\"token operator\">:<\/span>selectList<span class=\"token operator\">&gt;<\/span>\n                        <span class=\"token operator\">&lt;<\/span><span class=\"token operator\">\/<\/span>div<span class=\"token operator\">&gt;<\/span>\n                    <span class=\"token operator\">&lt;<\/span><span class=\"token operator\">\/<\/span>div<span class=\"token operator\">&gt;<\/span>\n                    <span class=\"token operator\">&lt;<\/span>div <span class=\"token keyword\">class<\/span><span class=\"token operator\">=<\/span><span class=\"token string\">\"slds-no-flex slds-m-left_x-large\"<\/span><span class=\"token operator\">&gt;<\/span>\n                        <span class=\"token operator\">&lt;<\/span>apex<span class=\"token operator\">:<\/span>commandButton value<span class=\"token operator\">=<\/span><span class=\"token string\">\"Sort\"<\/span> action<span class=\"token operator\">=<\/span><span class=\"token string\">\"{!sortList}\"<\/span> reRender<span class=\"token operator\">=<\/span><span class=\"token string\">\"leads_list\"<\/span> styleClass<span class=\"token operator\">=<\/span><span class=\"token string\">\"slds-button slds-button_neutral\"<\/span><span class=\"token operator\">\/<\/span><span class=\"token operator\">&gt;<\/span>\n                    <span class=\"token operator\">&lt;<\/span><span class=\"token operator\">\/<\/span>div<span class=\"token operator\">&gt;<\/span>\n                <span class=\"token operator\">&lt;<\/span><span class=\"token operator\">\/<\/span>div<span class=\"token operator\">&gt;<\/span>\n            <span class=\"token operator\">&lt;<\/span><span class=\"token operator\">\/<\/span>div<span class=\"token operator\">&gt;<\/span>\n            <span class=\"token operator\">&lt;<\/span>div <span class=\"token keyword\">class<\/span><span class=\"token operator\">=<\/span><span class=\"token string\">\"slds-col slds-no-flex slds-grid slds-align-top\"<\/span><span class=\"token operator\">&gt;<\/span>\n                <span class=\"token operator\">&lt;<\/span>apex<span class=\"token operator\">:<\/span>commandButton action<span class=\"token operator\">=<\/span><span class=\"token string\">\"{!URLFOR($Action.Lead.New)}\"<\/span> value<span class=\"token operator\">=<\/span><span class=\"token string\">\"New\"<\/span> styleClass<span class=\"token operator\">=<\/span><span class=\"token string\">\"slds-button slds-button_neutral\"<\/span><span class=\"token operator\">\/<\/span><span class=\"token operator\">&gt;<\/span>\n            <span class=\"token operator\">&lt;<\/span><span class=\"token operator\">\/<\/span>div<span class=\"token operator\">&gt;<\/span>\n        <span class=\"token operator\">&lt;<\/span><span class=\"token operator\">\/<\/span>div<span class=\"token operator\">&gt;<\/span>\n    <span class=\"token operator\">&lt;<\/span><span class=\"token operator\">\/<\/span>div<span class=\"token operator\">&gt;<\/span>\n<span class=\"token operator\">&lt;<\/span><span class=\"token operator\">\/<\/span>apex<span class=\"token operator\">:<\/span>outputPanel<span class=\"token operator\">&gt;<\/span>\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">\n<p>\u5f53isClassic\u7684\u503c\u4e3afalse\u65f6\uff0c\u8fd9\u4e2a&lt;apex\uff1aoutputPanel&gt;\u518d\u6b21\u5448\u73b0\uff0c\u5373\u7528\u6237\u5728Lightning Experience\u4e2d\u3002<\/p>\n<p>\u8bf7\u6ce8\u610f\uff0c\u9875\u9762\u6807\u9898\u6b63\u5728\u4f7f\u7528\u6765\u81eaSLDS\u7684SVG\u683c\u5f0f\u7684\u56fe\u6807\u3002\u5373\u4f7f\u4f60\u6ca1\u6709\u4e0a\u4f20\u9759\u6001\u8d44\u6e90\uff0c\u56e0\u4e3a\u4f60\u5305\u542b\u4e86&lt;apex\uff1aslds&gt;\u6807\u7b7e\uff0c\u9875\u9762\u77e5\u9053\u5728\u54ea\u91cc\u53ef\u4ee5\u627e\u5230\u56fe\u6807\u3002<\/p>\n<p>\u60a8\u8fd8\u53ef\u4ee5\u770b\u5230\u6211\u4eec\u5df2\u7ecf\u5728&lt;apex\uff1aoutputLabel&gt;\u548c&lt;apex\uff1aselectList&gt;\u5468\u56f4\u6dfb\u52a0\u4e86\u4e00\u4e9b&lt;div&gt;\u5305\u88c5\uff0c\u4ee5\u4fbf\u5b83\u4eec\u7684\u6807\u8bb0\u4e0eSLDS\u4e2d\u7684\u6807\u8bb0\u76f8\u5339\u914d\uff0c\u6b63\u786e\u7684\u7ea7\u8054\u5c06\u5141\u8bb8\u5b83\u4eec\u6b63\u786e\u5448\u73b0\u3002<\/p>\n<\/div>\n<\/div>\n<\/li>\n<li>\u4fdd\u5b58\u6587\u4ef6\u5e76\u5728Lightning Experience\u4e2d\u91cd\u65b0\u52a0\u8f7d\u9875\u9762\u4ee5\u67e5\u770b\u60a8\u7684\u66f4\u6539\u3002<br \/>\n<img decoding=\"async\" src=\"https:\/\/res.cloudinary.com\/hy4kyit2a\/image\/upload\/v1506963552\/doc\/trailhead\/staging\/team-trailhead_workshop-lightning-programmatic_en-us_img_2-lightningpageheader_630e247d53cf8d62ad2def2c3a43a16f.png\" alt=\"Leads list in Lightning Edition with a new header\" \/><br \/>\n\u73b0\u5728\uff0c\u4f60\u4e0d\u5f97\u4e0d\u627f\u8ba4\u8fd9\u5f88\u9177\uff0c\u5bf9\u5417\uff1f\u901a\u8fc7\u5bf9\u9875\u9762\u8fdb\u884c\u4e00\u4e9b\u66f4\u6539\uff0c\u6211\u4eec\u73b0\u5728\u53ef\u4ee5\u5728Lightning Experience\u4e2d\u6b63\u786e\u5448\u73b0\u6807\u51c6Visualforce\u9875\u9762\uff0c\u540c\u65f6\u5728Salesforce Classic\u4e2d\u4fdd\u6301\u5176\u539f\u59cb\u5916\u89c2\u3002<\/p>\n<p>\u4ee5\u9632\u4e07\u4e00\u4f60\u7684\u9875\u9762\u5012\u4e0b\uff0c\u5e76\u8f70\u7136\u5012\u5730&#8230;\u8fd9\u662f\u4ee3\u7801\u5e94\u8be5\u770b\u8d77\u6765\u7684\u6837\u5b50\uff1a<\/p>\n<pre class=\"line-numbers code-toolbar language-java\"><code class=\"  language-java\"><span class=\"token operator\">&lt;<\/span>apex<span class=\"token operator\">:<\/span>page controller<span class=\"token operator\">=<\/span><span class=\"token string\">\"DreamhouseProspects\"<\/span> lightningStylesheets<span class=\"token operator\">=<\/span><span class=\"token string\">\"true\"<\/span><span class=\"token operator\">&gt;<\/span>\n    <span class=\"token operator\">&lt;<\/span>apex<span class=\"token operator\">:<\/span>slds rendered<span class=\"token operator\">=<\/span><span class=\"token string\">\"{! !isClassic}\"<\/span><span class=\"token operator\">\/<\/span><span class=\"token operator\">&gt;<\/span>\n    <span class=\"token operator\">&lt;<\/span>apex<span class=\"token operator\">:<\/span>pageBlock <span class=\"token operator\">&gt;<\/span>\n        <span class=\"token operator\">&lt;<\/span>apex<span class=\"token operator\">:<\/span>form <span class=\"token operator\">&gt;<\/span>\n            <span class=\"token operator\">&lt;<\/span>apex<span class=\"token operator\">:<\/span>outputPanel rendered<span class=\"token operator\">=<\/span><span class=\"token string\">\"{! isClassic}\"<\/span><span class=\"token operator\">&gt;<\/span>\n                <span class=\"token operator\">&lt;<\/span>apex<span class=\"token operator\">:<\/span>sectionHeader title<span class=\"token operator\">=<\/span><span class=\"token string\">\"Leads\"<\/span> subtitle<span class=\"token operator\">=<\/span><span class=\"token string\">\"Home\"<\/span><span class=\"token operator\">\/<\/span><span class=\"token operator\">&gt;<\/span>\n                <span class=\"token operator\">&lt;<\/span>div style<span class=\"token operator\">=<\/span><span class=\"token string\">\"text-align:center;\"<\/span><span class=\"token operator\">&gt;<\/span>\n                    <span class=\"token operator\">&lt;<\/span>apex<span class=\"token operator\">:<\/span>commandButton action<span class=\"token operator\">=<\/span><span class=\"token string\">\"{!URLFOR($Action.Lead.New)}\"<\/span> value<span class=\"token operator\">=<\/span><span class=\"token string\">\"New\"<\/span><span class=\"token operator\">\/<\/span><span class=\"token operator\">&gt;<\/span>\n                <span class=\"token operator\">&lt;<\/span><span class=\"token operator\">\/<\/span>div<span class=\"token operator\">&gt;<\/span>\n                <span class=\"token operator\">&lt;<\/span>apex<span class=\"token operator\">:<\/span>outputLabel value<span class=\"token operator\">=<\/span><span class=\"token string\">\"Sort: \"<\/span> <span class=\"token keyword\">for<\/span><span class=\"token operator\">=<\/span><span class=\"token string\">\"sortList\"<\/span> <span class=\"token operator\">\/<\/span><span class=\"token operator\">&gt;<\/span>\n                <span class=\"token operator\">&lt;<\/span>apex<span class=\"token operator\">:<\/span>selectList value<span class=\"token operator\">=<\/span><span class=\"token string\">\"{! sortOrder}\"<\/span> size<span class=\"token operator\">=<\/span><span class=\"token string\">\"1\"<\/span> id<span class=\"token operator\">=<\/span><span class=\"token string\">\"sortList\"<\/span><span class=\"token operator\">&gt;<\/span>\n                    <span class=\"token operator\">&lt;<\/span>apex<span class=\"token operator\">:<\/span>selectOption itemvalue<span class=\"token operator\">=<\/span><span class=\"token string\">\"LastName\"<\/span> <span class=\"token operator\">\/<\/span><span class=\"token operator\">&gt;<\/span>\n                    <span class=\"token operator\">&lt;<\/span>apex<span class=\"token operator\">:<\/span>selectOption itemvalue<span class=\"token operator\">=<\/span><span class=\"token string\">\"FirstName\"<\/span> <span class=\"token operator\">\/<\/span><span class=\"token operator\">&gt;<\/span>\n                <span class=\"token operator\">&lt;<\/span><span class=\"token operator\">\/<\/span>apex<span class=\"token operator\">:<\/span>selectList<span class=\"token operator\">&gt;<\/span>\n                <span class=\"token operator\">&lt;<\/span>apex<span class=\"token operator\">:<\/span>commandButton value<span class=\"token operator\">=<\/span><span class=\"token string\">\"Sort Table\"<\/span> action<span class=\"token operator\">=<\/span><span class=\"token string\">\"{!sortList}\"<\/span> reRender<span class=\"token operator\">=<\/span><span class=\"token string\">\"leads_list\"<\/span><span class=\"token operator\">\/<\/span><span class=\"token operator\">&gt;<\/span>\n            <span class=\"token operator\">&lt;<\/span><span class=\"token operator\">\/<\/span>apex<span class=\"token operator\">:<\/span>outputPanel<span class=\"token operator\">&gt;<\/span>\n            <span class=\"token operator\">&lt;<\/span>apex<span class=\"token operator\">:<\/span>outputPanel rendered<span class=\"token operator\">=<\/span><span class=\"token string\">\"{! !isClassic}\"<\/span><span class=\"token operator\">&gt;<\/span>\n                <span class=\"token operator\">&lt;<\/span>div <span class=\"token keyword\">class<\/span><span class=\"token operator\">=<\/span><span class=\"token string\">\"slds-page-header\"<\/span><span class=\"token operator\">&gt;<\/span>\n                    <span class=\"token operator\">&lt;<\/span>div <span class=\"token keyword\">class<\/span><span class=\"token operator\">=<\/span><span class=\"token string\">\"slds-grid\"<\/span><span class=\"token operator\">&gt;<\/span>\n                        <span class=\"token operator\">&lt;<\/span>div <span class=\"token keyword\">class<\/span><span class=\"token operator\">=<\/span><span class=\"token string\">\"slds-col slds-has-flexi-truncate\"<\/span> xmlns<span class=\"token operator\">=<\/span><span class=\"token string\">\"http:\/\/www.w3.org\/2000\/svg\"<\/span> xmlns<span class=\"token operator\">:<\/span>xlink<span class=\"token operator\">=<\/span><span class=\"token string\">\"http:\/\/www.w3.org\/1999\/xlink\"<\/span><span class=\"token operator\">&gt;<\/span>\n                            <span class=\"token operator\">&lt;<\/span>div <span class=\"token keyword\">class<\/span><span class=\"token operator\">=<\/span><span class=\"token string\">\"slds-media slds-no-space slds-grow\"<\/span><span class=\"token operator\">&gt;<\/span>\n                                <span class=\"token operator\">&lt;<\/span>div <span class=\"token keyword\">class<\/span><span class=\"token operator\">=<\/span><span class=\"token string\">\"slds-media__figure\"<\/span><span class=\"token operator\">&gt;<\/span>\n                                    <span class=\"token operator\">&lt;<\/span>svg <span class=\"token keyword\">class<\/span><span class=\"token operator\">=<\/span><span class=\"token string\">\"slds-icon slds-icon-standard-user .slds-icon_small\"<\/span> aria<span class=\"token operator\">-<\/span>hidden<span class=\"token operator\">=<\/span><span class=\"token string\">\"true\"<\/span><span class=\"token operator\">&gt;<\/span>\n                                        <span class=\"token operator\">&lt;<\/span>use xlink<span class=\"token operator\">:<\/span>href<span class=\"token operator\">=<\/span><span class=\"token string\">\"{!URLFOR($Asset.SLDS, 'assets\/icons\/standard-sprite\/svg\/symbols.svg#lead')}\"<\/span><span class=\"token operator\">&gt;<\/span><span class=\"token operator\">&lt;<\/span><span class=\"token operator\">\/<\/span>use<span class=\"token operator\">&gt;<\/span>\n                                    <span class=\"token operator\">&lt;<\/span><span class=\"token operator\">\/<\/span>svg<span class=\"token operator\">&gt;<\/span>\n                                <span class=\"token operator\">&lt;<\/span><span class=\"token operator\">\/<\/span>div<span class=\"token operator\">&gt;<\/span>\n                                <span class=\"token operator\">&lt;<\/span>div <span class=\"token keyword\">class<\/span><span class=\"token operator\">=<\/span><span class=\"token string\">\"slds-media__body\"<\/span><span class=\"token operator\">&gt;<\/span>\n                                    <span class=\"token operator\">&lt;<\/span>p <span class=\"token keyword\">class<\/span><span class=\"token operator\">=<\/span><span class=\"token string\">\"slds-text-title_caps slds-line-height_reset\"<\/span><span class=\"token operator\">&gt;<\/span>Lead<span class=\"token operator\">&lt;<\/span><span class=\"token operator\">\/<\/span>p<span class=\"token operator\">&gt;<\/span>\n                                    <span class=\"token operator\">&lt;<\/span>h1 <span class=\"token keyword\">class<\/span><span class=\"token operator\">=<\/span><span class=\"token string\">\"slds-page-header__title slds-m-right_small slds-align-middle slds-truncate\"<\/span>\n                                        title<span class=\"token operator\">=<\/span><span class=\"token string\">\"this should match the Record Title\"<\/span><span class=\"token operator\">&gt;<\/span>Home<span class=\"token operator\">&lt;<\/span><span class=\"token operator\">\/<\/span>h1<span class=\"token operator\">&gt;<\/span>\n                                <span class=\"token operator\">&lt;<\/span><span class=\"token operator\">\/<\/span>div<span class=\"token operator\">&gt;<\/span>\n                            <span class=\"token operator\">&lt;<\/span><span class=\"token operator\">\/<\/span>div<span class=\"token operator\">&gt;<\/span>\n                            <span class=\"token operator\">&lt;<\/span>div <span class=\"token keyword\">class<\/span><span class=\"token operator\">=<\/span><span class=\"token string\">\"slds-grid slds-grid_vertical-align-end slds-m-vertical_small\"<\/span><span class=\"token operator\">&gt;<\/span>\n                                <span class=\"token operator\">&lt;<\/span>div <span class=\"token keyword\">class<\/span><span class=\"token operator\">=<\/span><span class=\"token string\">\"slds-size_1-of-6 \"<\/span><span class=\"token operator\">&gt;<\/span>\n                                    <span class=\"token operator\">&lt;<\/span>apex<span class=\"token operator\">:<\/span>outputLabel value<span class=\"token operator\">=<\/span><span class=\"token string\">\"Sort: \"<\/span> <span class=\"token keyword\">for<\/span><span class=\"token operator\">=<\/span><span class=\"token string\">\"sortListLightning\"<\/span> styleClass<span class=\"token operator\">=<\/span><span class=\"token string\">\"slds-form-element__label\"<\/span> <span class=\"token operator\">\/<\/span><span class=\"token operator\">&gt;<\/span>\n                                    <span class=\"token operator\">&lt;<\/span>div <span class=\"token keyword\">class<\/span><span class=\"token operator\">=<\/span><span class=\"token string\">\"slds-select_container\"<\/span><span class=\"token operator\">&gt;<\/span>\n                                        <span class=\"token operator\">&lt;<\/span>apex<span class=\"token operator\">:<\/span>selectList value<span class=\"token operator\">=<\/span><span class=\"token string\">\"{! sortOrder}\"<\/span> size<span class=\"token operator\">=<\/span><span class=\"token string\">\"1\"<\/span> id<span class=\"token operator\">=<\/span><span class=\"token string\">\"sortListLightning\"<\/span> styleClass<span class=\"token operator\">=<\/span><span class=\"token string\">\"slds-select\"<\/span><span class=\"token operator\">&gt;<\/span>\n                                            <span class=\"token operator\">&lt;<\/span>apex<span class=\"token operator\">:<\/span>selectOption itemvalue<span class=\"token operator\">=<\/span><span class=\"token string\">\"LastName\"<\/span> <span class=\"token operator\">\/<\/span><span class=\"token operator\">&gt;<\/span>\n                                            <span class=\"token operator\">&lt;<\/span>apex<span class=\"token operator\">:<\/span>selectOption itemvalue<span class=\"token operator\">=<\/span><span class=\"token string\">\"FirstName\"<\/span> <span class=\"token operator\">\/<\/span><span class=\"token operator\">&gt;<\/span>\n                                        <span class=\"token operator\">&lt;<\/span><span class=\"token operator\">\/<\/span>apex<span class=\"token operator\">:<\/span>selectList<span class=\"token operator\">&gt;<\/span>\n                                    <span class=\"token operator\">&lt;<\/span><span class=\"token operator\">\/<\/span>div<span class=\"token operator\">&gt;<\/span>\n                                <span class=\"token operator\">&lt;<\/span><span class=\"token operator\">\/<\/span>div<span class=\"token operator\">&gt;<\/span>\n                                <span class=\"token operator\">&lt;<\/span>div <span class=\"token keyword\">class<\/span><span class=\"token operator\">=<\/span><span class=\"token string\">\"slds-no-flex slds-m-left_x-small\"<\/span><span class=\"token operator\">&gt;<\/span>\n                                    <span class=\"token operator\">&lt;<\/span>apex<span class=\"token operator\">:<\/span>commandButton value<span class=\"token operator\">=<\/span><span class=\"token string\">\"Sort\"<\/span> action<span class=\"token operator\">=<\/span><span class=\"token string\">\"{!sortList}\"<\/span> reRender<span class=\"token operator\">=<\/span><span class=\"token string\">\"leads_list\"<\/span> styleClass<span class=\"token operator\">=<\/span><span class=\"token string\">\"slds-button slds-button_neutral\"<\/span><span class=\"token operator\">\/<\/span><span class=\"token operator\">&gt;<\/span>\n                                <span class=\"token operator\">&lt;<\/span><span class=\"token operator\">\/<\/span>div<span class=\"token operator\">&gt;<\/span>\n                            <span class=\"token operator\">&lt;<\/span><span class=\"token operator\">\/<\/span>div<span class=\"token operator\">&gt;<\/span>\n                        <span class=\"token operator\">&lt;<\/span><span class=\"token operator\">\/<\/span>div<span class=\"token operator\">&gt;<\/span>\n                        <span class=\"token operator\">&lt;<\/span>div <span class=\"token keyword\">class<\/span><span class=\"token operator\">=<\/span><span class=\"token string\">\"slds-col slds-no-flex slds-grid slds-align-top\"<\/span><span class=\"token operator\">&gt;<\/span>\n                            <span class=\"token operator\">&lt;<\/span>apex<span class=\"token operator\">:<\/span>commandButton action<span class=\"token operator\">=<\/span><span class=\"token string\">\"{!URLFOR($Action.Lead.New)}\"<\/span> value<span class=\"token operator\">=<\/span><span class=\"token string\">\"New\"<\/span> styleClass<span class=\"token operator\">=<\/span><span class=\"token string\">\"slds-button slds-button_neutral\"<\/span><span class=\"token operator\">\/<\/span><span class=\"token operator\">&gt;<\/span>\n                        <span class=\"token operator\">&lt;<\/span><span class=\"token operator\">\/<\/span>div<span class=\"token operator\">&gt;<\/span>\n                    <span class=\"token operator\">&lt;<\/span><span class=\"token operator\">\/<\/span>div<span class=\"token operator\">&gt;<\/span>\n                <span class=\"token operator\">&lt;<\/span><span class=\"token operator\">\/<\/span>div<span class=\"token operator\">&gt;<\/span>\n            <span class=\"token operator\">&lt;<\/span><span class=\"token operator\">\/<\/span>apex<span class=\"token operator\">:<\/span>outputPanel<span class=\"token operator\">&gt;<\/span>\n            <span class=\"token operator\">&lt;<\/span>apex<span class=\"token operator\">:<\/span>pageBlockTable value<span class=\"token operator\">=<\/span><span class=\"token string\">\"{! leads }\"<\/span> var<span class=\"token operator\">=<\/span><span class=\"token string\">\"ct\"<\/span> id<span class=\"token operator\">=<\/span><span class=\"token string\">\"leads_list\"<\/span><span class=\"token operator\">&gt;<\/span>\n                <span class=\"token operator\">&lt;<\/span>apex<span class=\"token operator\">:<\/span>column headerValue<span class=\"token operator\">=<\/span><span class=\"token string\">\"First Name\"<\/span><span class=\"token operator\">&gt;<\/span>\n                    <span class=\"token operator\">&lt;<\/span>apex<span class=\"token operator\">:<\/span>outputLink value<span class=\"token operator\">=<\/span><span class=\"token string\">\"\/{! ct.Id}\"<\/span><span class=\"token operator\">&gt;<\/span><span class=\"token punctuation\">{<\/span><span class=\"token operator\">!<\/span> ct<span class=\"token punctuation\">.<\/span>FirstName <span class=\"token punctuation\">}<\/span><span class=\"token operator\">&lt;<\/span><span class=\"token operator\">\/<\/span>apex<span class=\"token operator\">:<\/span>outputLink<span class=\"token operator\">&gt;<\/span>\n                <span class=\"token operator\">&lt;<\/span><span class=\"token operator\">\/<\/span>apex<span class=\"token operator\">:<\/span>column<span class=\"token operator\">&gt;<\/span>\n                <span class=\"token operator\">&lt;<\/span>apex<span class=\"token operator\">:<\/span>column value<span class=\"token operator\">=<\/span><span class=\"token string\">\"{! ct.LastName }\"<\/span><span class=\"token operator\">\/<\/span><span class=\"token operator\">&gt;<\/span>\n                <span class=\"token operator\">&lt;<\/span>apex<span class=\"token operator\">:<\/span>column value<span class=\"token operator\">=<\/span><span class=\"token string\">\"{! ct.Email }\"<\/span><span class=\"token operator\">\/<\/span><span class=\"token operator\">&gt;<\/span>\n                <span class=\"token operator\">&lt;<\/span>apex<span class=\"token operator\">:<\/span>column value<span class=\"token operator\">=<\/span><span class=\"token string\">\"{! ct.Phone }\"<\/span><span class=\"token operator\">\/<\/span><span class=\"token operator\">&gt;<\/span>\n            <span class=\"token operator\">&lt;<\/span><span class=\"token operator\">\/<\/span>apex<span class=\"token operator\">:<\/span>pageBlockTable<span class=\"token operator\">&gt;<\/span>              \n        <span class=\"token operator\">&lt;<\/span><span class=\"token operator\">\/<\/span>apex<span class=\"token operator\">:<\/span>form<span class=\"token operator\">&gt;<\/span>\n    <span class=\"token operator\">&lt;<\/span><span class=\"token operator\">\/<\/span>apex<span class=\"token operator\">:<\/span>pageBlock<span class=\"token operator\">&gt;<\/span>\n<span class=\"token operator\">&lt;<\/span><span class=\"token operator\">\/<\/span>apex<span class=\"token operator\">:<\/span>page<span class=\"token operator\">&gt;<\/span>\n<\/code><\/pre>\n<\/li>\n<\/ol>\n","protected":false},"excerpt":{"rendered":"<p>\u4e3a\u7528\u6237\u754c\u9762\u6709\u6761\u4ef6\u5730\u5448\u73b0Visualforce\u9875\u9762 \u5728\u4e0a\u4e00\u6b65\u4e2d\uff0c\u6211\u4eec\u8ba9\u670d\u52a1\u5668\u4eceVisualforce\u66f4\u65b0\u6807\u51c6\u6837\u5f0f &hellip; <a href=\"http:\/\/www.ponybai.com\/?p=657\" class=\"more-link\">\u7ee7\u7eed\u9605\u8bfb<span class=\"screen-reader-text\">Lightning-\u5e94\u7528\u7a0b\u5e8f\uff082\uff09<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[174],"tags":[],"class_list":["post-657","post","type-post","status-publish","format-standard","hentry","category-lightning-"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v21.7 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Lightning-\u5e94\u7528\u7a0b\u5e8f\uff082\uff09 - \u767d\u767d\u968f\u7b14<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"http:\/\/www.ponybai.com\/?p=657\" \/>\n<meta property=\"og:locale\" content=\"zh_CN\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Lightning-\u5e94\u7528\u7a0b\u5e8f\uff082\uff09 - \u767d\u767d\u968f\u7b14\" \/>\n<meta property=\"og:description\" content=\"\u4e3a\u7528\u6237\u754c\u9762\u6709\u6761\u4ef6\u5730\u5448\u73b0Visualforce\u9875\u9762 \u5728\u4e0a\u4e00\u6b65\u4e2d\uff0c\u6211\u4eec\u8ba9\u670d\u52a1\u5668\u4eceVisualforce\u66f4\u65b0\u6807\u51c6\u6837\u5f0f &hellip; \u7ee7\u7eed\u9605\u8bfbLightning-\u5e94\u7528\u7a0b\u5e8f\uff082\uff09\" \/>\n<meta property=\"og:url\" content=\"http:\/\/www.ponybai.com\/?p=657\" \/>\n<meta property=\"og:site_name\" content=\"\u767d\u767d\u968f\u7b14\" \/>\n<meta property=\"article:published_time\" content=\"2018-01-21T12:36:09+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/res.cloudinary.com\/hy4kyit2a\/image\/upload\/v1509046373\/doc\/trailhead\/staging\/team-trailhead_workshop-lightning-programmatic_en-us_img_2-lexleadslistnoheader_4ee532ceb88748908de8ca93476d340f.png\" \/>\n<meta name=\"author\" content=\"ponybai\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"\u4f5c\u8005\" \/>\n\t<meta name=\"twitter:data1\" content=\"ponybai\" \/>\n\t<meta name=\"twitter:label2\" content=\"\u9884\u8ba1\u9605\u8bfb\u65f6\u95f4\" \/>\n\t<meta name=\"twitter:data2\" content=\"6 \u5206\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"http:\/\/www.ponybai.com\/?p=657#article\",\"isPartOf\":{\"@id\":\"http:\/\/www.ponybai.com\/?p=657\"},\"author\":{\"name\":\"ponybai\",\"@id\":\"http:\/\/www.ponybai.com\/#\/schema\/person\/935c7592c850c65e1e5eba4530dbf883\"},\"headline\":\"Lightning-\u5e94\u7528\u7a0b\u5e8f\uff082\uff09\",\"datePublished\":\"2018-01-21T12:36:09+00:00\",\"dateModified\":\"2018-01-21T12:36:09+00:00\",\"mainEntityOfPage\":{\"@id\":\"http:\/\/www.ponybai.com\/?p=657\"},\"wordCount\":170,\"publisher\":{\"@id\":\"http:\/\/www.ponybai.com\/#\/schema\/person\/935c7592c850c65e1e5eba4530dbf883\"},\"articleSection\":[\"Lightning-\u5e94\u7528\u7a0b\u5e8f\"],\"inLanguage\":\"zh-Hans\"},{\"@type\":\"WebPage\",\"@id\":\"http:\/\/www.ponybai.com\/?p=657\",\"url\":\"http:\/\/www.ponybai.com\/?p=657\",\"name\":\"Lightning-\u5e94\u7528\u7a0b\u5e8f\uff082\uff09 - \u767d\u767d\u968f\u7b14\",\"isPartOf\":{\"@id\":\"http:\/\/www.ponybai.com\/#website\"},\"datePublished\":\"2018-01-21T12:36:09+00:00\",\"dateModified\":\"2018-01-21T12:36:09+00:00\",\"breadcrumb\":{\"@id\":\"http:\/\/www.ponybai.com\/?p=657#breadcrumb\"},\"inLanguage\":\"zh-Hans\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"http:\/\/www.ponybai.com\/?p=657\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"http:\/\/www.ponybai.com\/?p=657#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"\u9996\u9875\",\"item\":\"http:\/\/www.ponybai.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Lightning-\u5e94\u7528\u7a0b\u5e8f\uff082\uff09\"}]},{\"@type\":\"WebSite\",\"@id\":\"http:\/\/www.ponybai.com\/#website\",\"url\":\"http:\/\/www.ponybai.com\/\",\"name\":\"\u767d\u767d\u968f\u7b14\",\"description\":\"Salesforce\u5b98\u65b9\u8bb2\u5e08\",\"publisher\":{\"@id\":\"http:\/\/www.ponybai.com\/#\/schema\/person\/935c7592c850c65e1e5eba4530dbf883\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"http:\/\/www.ponybai.com\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"zh-Hans\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"http:\/\/www.ponybai.com\/#\/schema\/person\/935c7592c850c65e1e5eba4530dbf883\",\"name\":\"ponybai\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"zh-Hans\",\"@id\":\"http:\/\/www.ponybai.com\/#\/schema\/person\/image\/\",\"url\":\"http:\/\/www.ponybai.com\/wp-content\/uploads\/2025\/03\/cropped-Ihsans-WeChatQR.jpg\",\"contentUrl\":\"http:\/\/www.ponybai.com\/wp-content\/uploads\/2025\/03\/cropped-Ihsans-WeChatQR.jpg\",\"width\":248,\"height\":248,\"caption\":\"ponybai\"},\"logo\":{\"@id\":\"http:\/\/www.ponybai.com\/#\/schema\/person\/image\/\"},\"sameAs\":[\"http:\/\/121.37.188.161\"],\"url\":\"http:\/\/www.ponybai.com\/?author=1\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Lightning-\u5e94\u7528\u7a0b\u5e8f\uff082\uff09 - \u767d\u767d\u968f\u7b14","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"http:\/\/www.ponybai.com\/?p=657","og_locale":"zh_CN","og_type":"article","og_title":"Lightning-\u5e94\u7528\u7a0b\u5e8f\uff082\uff09 - \u767d\u767d\u968f\u7b14","og_description":"\u4e3a\u7528\u6237\u754c\u9762\u6709\u6761\u4ef6\u5730\u5448\u73b0Visualforce\u9875\u9762 \u5728\u4e0a\u4e00\u6b65\u4e2d\uff0c\u6211\u4eec\u8ba9\u670d\u52a1\u5668\u4eceVisualforce\u66f4\u65b0\u6807\u51c6\u6837\u5f0f &hellip; \u7ee7\u7eed\u9605\u8bfbLightning-\u5e94\u7528\u7a0b\u5e8f\uff082\uff09","og_url":"http:\/\/www.ponybai.com\/?p=657","og_site_name":"\u767d\u767d\u968f\u7b14","article_published_time":"2018-01-21T12:36:09+00:00","og_image":[{"url":"https:\/\/res.cloudinary.com\/hy4kyit2a\/image\/upload\/v1509046373\/doc\/trailhead\/staging\/team-trailhead_workshop-lightning-programmatic_en-us_img_2-lexleadslistnoheader_4ee532ceb88748908de8ca93476d340f.png"}],"author":"ponybai","twitter_card":"summary_large_image","twitter_misc":{"\u4f5c\u8005":"ponybai","\u9884\u8ba1\u9605\u8bfb\u65f6\u95f4":"6 \u5206"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"http:\/\/www.ponybai.com\/?p=657#article","isPartOf":{"@id":"http:\/\/www.ponybai.com\/?p=657"},"author":{"name":"ponybai","@id":"http:\/\/www.ponybai.com\/#\/schema\/person\/935c7592c850c65e1e5eba4530dbf883"},"headline":"Lightning-\u5e94\u7528\u7a0b\u5e8f\uff082\uff09","datePublished":"2018-01-21T12:36:09+00:00","dateModified":"2018-01-21T12:36:09+00:00","mainEntityOfPage":{"@id":"http:\/\/www.ponybai.com\/?p=657"},"wordCount":170,"publisher":{"@id":"http:\/\/www.ponybai.com\/#\/schema\/person\/935c7592c850c65e1e5eba4530dbf883"},"articleSection":["Lightning-\u5e94\u7528\u7a0b\u5e8f"],"inLanguage":"zh-Hans"},{"@type":"WebPage","@id":"http:\/\/www.ponybai.com\/?p=657","url":"http:\/\/www.ponybai.com\/?p=657","name":"Lightning-\u5e94\u7528\u7a0b\u5e8f\uff082\uff09 - \u767d\u767d\u968f\u7b14","isPartOf":{"@id":"http:\/\/www.ponybai.com\/#website"},"datePublished":"2018-01-21T12:36:09+00:00","dateModified":"2018-01-21T12:36:09+00:00","breadcrumb":{"@id":"http:\/\/www.ponybai.com\/?p=657#breadcrumb"},"inLanguage":"zh-Hans","potentialAction":[{"@type":"ReadAction","target":["http:\/\/www.ponybai.com\/?p=657"]}]},{"@type":"BreadcrumbList","@id":"http:\/\/www.ponybai.com\/?p=657#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"\u9996\u9875","item":"http:\/\/www.ponybai.com\/"},{"@type":"ListItem","position":2,"name":"Lightning-\u5e94\u7528\u7a0b\u5e8f\uff082\uff09"}]},{"@type":"WebSite","@id":"http:\/\/www.ponybai.com\/#website","url":"http:\/\/www.ponybai.com\/","name":"\u767d\u767d\u968f\u7b14","description":"Salesforce\u5b98\u65b9\u8bb2\u5e08","publisher":{"@id":"http:\/\/www.ponybai.com\/#\/schema\/person\/935c7592c850c65e1e5eba4530dbf883"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"http:\/\/www.ponybai.com\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"zh-Hans"},{"@type":["Person","Organization"],"@id":"http:\/\/www.ponybai.com\/#\/schema\/person\/935c7592c850c65e1e5eba4530dbf883","name":"ponybai","image":{"@type":"ImageObject","inLanguage":"zh-Hans","@id":"http:\/\/www.ponybai.com\/#\/schema\/person\/image\/","url":"http:\/\/www.ponybai.com\/wp-content\/uploads\/2025\/03\/cropped-Ihsans-WeChatQR.jpg","contentUrl":"http:\/\/www.ponybai.com\/wp-content\/uploads\/2025\/03\/cropped-Ihsans-WeChatQR.jpg","width":248,"height":248,"caption":"ponybai"},"logo":{"@id":"http:\/\/www.ponybai.com\/#\/schema\/person\/image\/"},"sameAs":["http:\/\/121.37.188.161"],"url":"http:\/\/www.ponybai.com\/?author=1"}]}},"_links":{"self":[{"href":"http:\/\/www.ponybai.com\/index.php?rest_route=\/wp\/v2\/posts\/657","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/www.ponybai.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.ponybai.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.ponybai.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.ponybai.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=657"}],"version-history":[{"count":0,"href":"http:\/\/www.ponybai.com\/index.php?rest_route=\/wp\/v2\/posts\/657\/revisions"}],"wp:attachment":[{"href":"http:\/\/www.ponybai.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=657"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.ponybai.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=657"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.ponybai.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=657"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}