click interaction on deck works half the time

  • 1
  • Problem
  • Updated 2 years ago
  • In Progress
I have a Click interaction on a Deck component that shows a popup. It only works for half the cards or less. For the ones where it doesn't work, each click logs an error in the console "q.replace is not a function"

skuid__SkuidJS:16 Uncaught TypeError: q.replace is not a function
    at Object.edit (skuid__SkuidJS:16)
    at Object.edit (skuid__SkuidJS:16)
    at g.render (skuid__SkuidJS:15)
    at v (core.js:1)
    at j (core.js:1)
    at skuid__SkuidJS:5
    at conditionallyDo (skuid__SkuidJS:6)
    at Object.conditionallyRender (skuid__SkuidJS:5)
    at Element.<anonymous> (core.js:1)
    at Function.each (skuid__JQueryJS:2)
Photo of Jack Sanford

Jack Sanford, Champion

  • 9,540 Points 5k badge 2x thumb

Posted 2 years ago

  • 1
Photo of Amy Dewaal

Amy Dewaal, Official Rep

  • 8,300 Points 5k badge 2x thumb

Is it always the same cards that don't work?
Is there any pattern between the records that work and the ones that don't?
Do you have any other actions happening when you click a card besides the popup?
Photo of Jack Sanford

Jack Sanford, Champion

  • 9,540 Points 5k badge 2x thumb
Found the issue - I had a number field I was overriding the field metadata on making it a picklist, and when I took that field off, all the cards' clicks worked. When I added it back on, only the cards where the field had a null value worked, any card with value in the field already wouldn't load. And if I open one without a value, choose a value from the picklist, and hit save, the q.replace error comes up in the console and the page freezes out with Saving...

Funny enough, this same field works fine on the card itself, just not in a popup from the card. 

By the way, I tested removing the interaction and moving my popup to a button on a button set, and the same issue occurred. So it's not necessarily the interaction, but more the popup from a card.