1

I have a custom lightning component that is displaying picklist values as a path. I have that component sitting in a Community as well as a Record Page on the backend. However, there are two separate behaviors going on for the same component:

  • In the Community, everything is working as expected, displaying picklist value names in path, clicking a path tile calls javascript correctly
  • In Salesforce, instead of picklist values [Object object] is being displayed even though I'm referencing the specific parameter in the object
  • In Salesforce, Clicking a path tile also does not properly find the method in the JS controller

Code for the PathStep.cmp Note: This is a nested child component that is being generated via JS:

<aura:attribute name="currentPhase" type="String" />
  <aura:attribute name="phases" type="Object[]" />
  <aura:registerEvent name="pathChange" type="c:PathChangeEvt"/>

  <aura:iteration items="{!v.phases}" var="var">
   <li class="{!concat('slds-path__item ',var.status)}" role="presentation">
      <a aria-selected="true" class="slds-path__link" onclick="{!c.changePage}" id="{!var.key}" role="option" tabindex="0" style="text-decoration:none;">
        <span class="slds-path__stage">
          <lightning:icon iconName="utility:check" size="small"/>
          <span class="slds-assistive-text">Placeholder</span>
        </span>
        <span class="slds-path__title">{!var.key}</span> /* This is showing Step 1, Step 2 in Community, etc. but [Object object] in backend */
      </a>
    </li> 
    </aura:iteration>

Code for PathStepController.js:

changePage : function(component, event, helper) {

    var pathChange = component.getEvent("pathChange");
            pathChange.setParams({
                step: event.target.id
    }).fire();

    component.set("v.currentPhase", event.target.id);

}

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.