Aiuto sulla reindirizzamento dell'utente verso contenuti protetti

Continuando la discussione da Argomenti bloccati in categoria:

Stavo cercando di modificare il componente bloccato per reindirizzare l’utente a una pagina specifica invece di mostrare un blocco.

1
Ho provato DiscourseURL.routeTo('/t/table-builder-test-2/1667') nell’editor di temi, funziona ma richiede tempo e genera errori durante il caricamento, sebbene la pagina venga caricata correttamente.

2
Ho anche provato con setDefaultHomepage('/t/table-builder-test-2/1667'); e

      const container = Discourse.__container__;
      const router = container.lookup("router:main");

      let topicId = router.currentRoute.parent.params.id

      PreloadStore.remove(`topic/${topicId}`);

Reindirizza solo dopo che la pagina bloccata è stata caricata, quindi fai clic sul pulsante indietro.

3
location.href = '/t/table-builder-test-2/1667'

Funziona, ma anche le pagine bloccate vengono caricate per alcuni secondi, a differenza di 1 che lo fa in modo fluido.

Qual è il modo migliore per raggiungere questo obiettivo?

Il mio tema Custom Homepage modifica la home page. Il trucco è che alcune cose vengono pre-caricate e devi fare qualcosa per farle sparire.

Spero che tu possa trovare l’esempio nel codice, dato che è il massimo che posso spiegare dal mio telefono. :person_shrugging:

1 Mi Piace

Ho provato con

let topicId = router.currentRoute.parent.params.id
PreloadStore.remove(`topic/${topicId}`);

ma non funziona, abbiamo un documento su come funziona il metodo PreloadStore.remove?