How to invoke refresher with gesture handler , vue

i have got almost all my code working again,

click, double click, long press

only thing not working is the refresher…

I can add code to the gesture handlers to detect movement while long pressed

but how do I invoke the refresher component? or do I have to somehow disable the gesture once I detect movement?

the refresher is in my content component and conflicts with my data handlers.
but as I understand it, it has to be inside an ion-content

this a repost of

if I disable my gesture handler then refresh works. but I need both… used to have both in angular version

1 Like

well, that was easy…

add an id to the ion-refresher

in the directive mounted, do (get the dom element of the refresher)
    only need to find it once per the component
    let refresher=document.getDocumentByID(id) 
in start and move do   ( forward event on to refresher)
         refresher.dispatchEvent(data.instance.event)

well… all of a sudden its not working

I have to install a system update which cause an xcode update and tools update

ionic is still at 6.20.3

but now the events do trigger my directive… it is loaded… and gesture is created for each ion-row.
the ion-col in the row gets the mouse click (as before)

and I can forward it to the ion-row(if I add @click to the row… but don’t need it)

but then nothing… without @click (was always without) it should go to the directive

I have confirmed the element for the directive is correct, (element provided on mounted)

and the gesture config is as before

                    const gesture = createGesture({
                        name:'DoubleTap',
                        el: el,
                        threshold: 0,
                        onStart: data => { onStart(data)},
                        onEnd: data => { onEnd(data) },
                        onMove: data => { onMove(data) },
                        direction: 'y',
                        disableScroll: true, 
                        gesturePriority: 1, 
                        // pass the element id to the functions
                        data: { id: el.id }
                    });
                    gesture.enable(true);

oh, the refresher works… but my directive is not involved…

I changed the priority to +1 (from-1)… no change

well, actually it IS working… with priority 0 AND with NO explicit event forwarding…

just don’t start pulldown when touching a data record… in open space is just fine.