Lightning Component Glitch

Erik WahlbergErik Wahlberg Member, Sonar
edited May 2018 in Problems
Very curious glitch i'm running into here, issue being that my Skuid Page's are working as components in some pages but not others. 

Let me just recap real quick, I have everything necessary enabled and have successfully created Skuid lightning components in my Accounts & Opportunity Record Pages. These two pages load consecutively, reliably, and accurately uses the Id='page parameter' condition. These were created later last week. I've cleared caches from Chrome & used Incognito browser as well and have generated page files for all Skuid pages (twice to be sure).

This week, i'm creating a record detail page for Contacts. I created a very basic contact detail page with the same exact conditional setup as done previously, and the component doesn't load. All that appears is a small blank white bar.

I take it back to basics, I remove the ID condition from the model so all (in sandbox so 3) contact fields should be loading. Still, blank white box.

I refresh this page incessantly and randomly the 3 records do load....then goes back to the blank white box

I take it a step further back and embed this page in my Opportunity Lightning Page, and it works every single time. All 3 records load upon each page refresh.

So at this point, I think the Contact Lightning Page is at fault, so I create a brand new one and activate it as default. Copy the same exact procedure to include the page as done in the Opportunity Lightning Page, and it only loads sometimes.

At this point i'm working with a Contact Detail Skuid page that just loads every contact, no conditions no nothing. Haven't even begun to incorporate the Id='Page Parameter' condition into the Contact Lightning page. And in both my old Contact Lighting Detail Page & the new one I created to test, both don't reliably load the data. At this point I don't know whether this is something I can troubleshoot further, or is the result of a glitch, or if I've carelessly missed something. 


TL;DR
The fact that my Contact_Detail_Page component (lacking any Id='Page Parameter' works 100% on my Opportunity Lightning Page and unreliably (if ever) in my Contact Lightning Page, leads me to believe this is some sort of glitch. 

Contact Detail Page. The Lightning Component doesn't load even though it has no conditions
image

Same Exact Page as above: Loads after refreshing x number of times
image

Embedded that page in my Opportunity Detail Page, and it loads 100% of the time
image

Comments

  • Erik WahlbergErik Wahlberg Member, Sonar
    edited August 2017
    Additional Screenshots from the Lightning App Builder view

    Works in Opportunity Detail Page
    image

    Doesn't Work in Contact Detail Page
    image

  • Erik WahlbergErik Wahlberg Member, Sonar
    edited August 2017
    Update: Found the error in console. Still unable to determine if there's a fix.
    Refused to evaluate a string as JavaScript because 'unsafe-eval' is not an allowed source of script in the following Content Security Policy directive: "script-src 'self' chrome-extension: https://sfdc.azureedge.net *.cs17.visual.force.com https://ssl.gstatic.com/accessibility/". fingerprint.js:21 
    image

    Without error after refreshing page several times
    image
  • Amy DewaalAmy Dewaal Member, Skuad ✭✭
    edited May 2018
    Erik,
    That's definitely an odd issue; I haven't seen it or the error you see before.

    What version of Skuid are you on?
    Do you see any errors / the same error if you view the browser console when in the Lightning app builder (when the contact page doesn't load / is blank)? 
    Do you have any Chrome extensions running? If you disable them do you still see any difference?
    What machine and browser are you on?
  • Erik WahlbergErik Wahlberg Member, Sonar
    edited August 2017
    Running on Windows: Updated / Browser is Chrome: Updated

    Skuid version is 10.0.3 and i'm running on sandbox so i'll try updating and see if that sorts things out (oops)

    From Lightning App Builder: Initial load doesn't show errors; however, clicking on the Skuid component produces error below 
    image

    Disabled all extensions and still showed same behavior

    Updated to Skuid 10.0.4 and still shows same behavior. Component always loads on the Account & Opportunity page and sporadically for anything else. Note this isn't just happening for contacts but for anything i'm developing moving forward (Cases this happened with & One of our custom objects).

  • Erik WahlbergErik Wahlberg Member, Sonar
    edited August 2017
    I don't know whether or not this will have an impact, but loading the Account / Opportunity pages always has these errors whereas they never show up anywhere else (Contacts, Cases, etc.) 
    image
    And my components always work on this page. I've read up on this error on the community so I'm figuring its unrelated, but still worth noting
  • Erik WahlbergErik Wahlberg Member, Sonar
    edited August 2017
    TL;DR Everything Above Here
    I've determined this is 100% a glitch and I think the issue stem's from Lightning's new navigation conflicting with Skuid.
    If you navigate an Account/Opportunity detail page, then navigate to a Contact Detail page it works. From there if you go to anything else like a lead detail page it will work, until you re-navigate back to an Opportunity/Account Detail Page.

    What breaks the pages is refreshing. If you refresh on any other page than Accounts or Opportunities detail page, all subsequent lightning components will fail to load. Refreshing probably isn't the problem but it reliably triggers the issue.


    I'll put up a video of the behavior i'm seeing with console included. Maybe that will give better insights into what's happening. 


  • Erik WahlbergErik Wahlberg Member, Sonar
    edited August 2017
    Update: Adding a non-related Skuid component to the page fixes the issue. Refreshing now works when there's another component on the page; however, if that component's removed it will go back to breaking.

    I don't know if that's considered fixed but at least i'm not seeing the issue anymore
  • ddeveauxddeveaux Member
    edited May 2018
    I seem to be seeing this also, but it's not a Lightning app. I am using the Lightning component to override the Tab and View pages of a custom object in a Classic app displayed in Lightning. I kept going to a Tab and a completely different Skuid page was displaying. Seems to be something about the refresh, etc as described here.

    But my issue is we can't add a non Skuid component to the page since the Skuid page is the entire page.
  • Amy DewaalAmy Dewaal Member, Skuad ✭✭
    edited September 2017
    Have you overridden the tab using a Lightning component bundle or some other way? Is the view overridden through a Lightning record page or some other way? Are they both supposed to redirect to Skuid pages? Are you going to the custom object's tab through the classic app (it's included in it), but it isn't going to the Skuid page you expect? How do you want the app to work?

    As for adding a non Skuid component to the page, you'll have to use the Lightning app builder to start with a Lightning page and then add Skuid (and non-Skuid) where you want it. Here's a general overview of using Skuid in Lightning. 
  • ddeveauxddeveaux Member
    edited September 2017
    (I should qualify my statement to say that this is an ISV app and the only service we provide for past 4 yrs so developing inside SF everyday most days. Long story but our app could not be used in Lightning, are now required to migrate to that for obvious reasons.)

    The override was a simple Lightning component bundle. View and tab overridden using these bundles. All are redirecting to Skuid pages with nothing else on the page.

    The app is Classic with the view in Lightning enabled. For how it should work:

    1. User clicks Contact Tab - Skuid ContactTab page shows.
    2. User clicks CustomObject1 Tab - Skuid CustomObject1Tab page shows.
    3. User clicks CustomObject2 Tab - Skuid CustomObject2Tab page shows.

    What is happening for us is pretty similar if not same as original post. If user begins and clicks Contact Tab, page shows fine. When user then clicks CustomObject[X]Tab, Contact Tab page displays again. This repeats even though URL is corectly displaying that person is on CustomObject[X]Tab page. Refereshing the browser 1 or 2 times then displays the correct Skuid page for that tab. But problem repeats if user then tries to navigate to another tab.

    (We do not want to add any components to any pages at this time and yes we do understand that this would invoive Lightning app builder.)

    Is it possible the issue is that the app is Classic with "View in Lightning enabled" vs. an actual Lightning app? If so is this confirmed because if it requires we develop the app again for this part to work that's unfortunate.
  • ddeveauxddeveaux Member
    edited September 2017
    We had to uninstall our app today and reinstalled a new beta with these components packaged and it's doing same thing. When user clicks new tab the original Skuid page is still displayed.
  • Amy DewaalAmy Dewaal Member, Skuad ✭✭
    edited September 2017
    A few more questions to clarify:
    What version of Skuid are you on?
    Is Contact Tab the standard Contact tab that you've overridden with the Lightning component? 
    I'm guessing both custom object tabs are also overridden with the Lightning component?
    Just want to make sure I'm reproducing your scenario correctly.

    Thanks!
  • ddeveauxddeveaux Member
    edited September 2017
    Got it on 10.0.4 and 10.0.5. (I do see you added .6 yesterday)
    Yes Contact is standard overridden with Skuid LEX component
    Yes to both custom object tabs

    The app is a Classic app checked to display in LEX. It is not a LEX app created with LEX app builder though.
  • Amy DewaalAmy Dewaal Member, Skuad ✭✭
    edited September 2017
    Sadly, I'm still having trouble reproducing your problem. I've got a Classic app with a few standard object tabs and a custom object tab. All the tabs have a Lightning component bundle override on them that points them to different Skuid pages, and I don't have any problems navigating from tab to tab in the app. Would you mind posting your Lightning component bundle override code?
  • ddeveauxddeveaux Member
    edited September 2017
    Thanks much but I think I'll hold off for now. After posting my message Ron Kiker of Codescience, who we are working with, also posted on a thread for same issue and is troubleshooting with some members of the Skuid team. So to avoid duplicating efforts I'll kick over to his thread. (I didn't see if he was working with you or not on that thread)

    But to replicate they'd all need to be part of a managed package. I don't think replicating locally would resolve. But I posted LEX code below as well.
    <aura:component implements="lightning:actionOverride,force:appHostable,force:hasSobjectName" access="global"> <skuid:page page="ContactTab"/> </aura:component> 
    We did this with and without the "force:hasSobjectName" element.
  • Amy DewaalAmy Dewaal Member, Skuad ✭✭
    edited September 2017
    Okay, sounds good! Thanks for the code!
  • Amy DewaalAmy Dewaal Member, Skuad ✭✭
    edited September 2017
    Thanks, I think that helped me figure it out!
  • Stephen SellsStephen Sells Member
    edited December 2017
    Hello Skuid Community ~

    This has been addressed in the new Brooklyn 10.0.12 release which is now available on the Skuid Releases page.

    As a reminder, Salesforce does NOT allow reverting back to prior versions of managed packages. Skuid always recommends installing new versions in a non-business critical sandbox environment to test all mission critical functionality before installing into a production environment. We also recommend that you update out of date themes when you upgrade.
Sign In or Register to comment.