Snippets

jprichter Buttons and Actions in the Lightning Experience

Created by jprichter last modified
<apex:page standardController="Case" showHeader="false" standardStylesheets="false" sidebar="false" applyHtmlTag="false" applyBodyTag="false" docType="html-5.0">

    <html xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">

    <head>
        <apex:stylesheet value="{!URLFOR($Resource.SLDS, 'assets/styles/salesforce-lightning-design-system.css')}" />
    </head>

    <body>

    </body>

    </html>
</apex:page>
1
2
3
<aura:application access="global" extends="ltng:outApp">
    <aura:dependency resource="c:MyLightningComponent" />
</aura:application>
1
2
3
4
<aura:event type="APPLICATION" description="a description of the event">
    <aura:attribute name="paramA" type="String"/>
    <aura:attribute name="paramB" type="String" />
</aura:event>
<aura:component>
    <aura:handler event="c:VFPageEvent" action="{!c.handleEvent}" />
    <aura:attribute name="paramA" type="String" />
    <aura:attribute name="paramB" type="String" />

    <div>
        Param A: -- <ui:outputText value="{!v.paramA}" />
    </div>
    <div>
        <ui:button label="Go to Case" press="{!c.goThere}" />
    </div>
</aura:component>
({
    handleEvent: function(component, event, helper) {
        component.set("v.paramA", event.getParam("paramA"));
        component.set("v.paramB", event.getParam("paramB"));

    },
    goThere: function(component,event, helper){
        var caseId = component.get("v.paramB");
        sforce.one.navigateToSObject(caseId.substring(0, 15));
    }
})
1
2
3
4
5
6
7
8
goThere: function(component,event, helper){
    var caseId = component.get("v.paramB");
    var navEvt = $A.get("e.force:navigateToSObject");
    navEvt.setParams({
        "recordId": caseId.substring(0, 15)
    });
    navEvt.fire();
}
<apex:includeLightning />

<script>
$Lightning.use("c:VFAppContainer", function() {
    $Lightning.createComponent("c:MyLightningComponent", {}, "myLightningComponent", function(cmp) {
        var event = $A.get("e.c:VFPageEvent");
        event.setParams({
            "paramA": "Hello, world",
            "paramB": "{!Case.Id}"
        });
        event.fire();
    });
});
</script>

<div class="slds">
    <div id="myLightningComponent"></div>
</div>

Comments (0)

HTTPS SSH

You can clone a snippet to your computer for local editing. Learn more.