Seatext library

Posso usare SeaText AI senza configurare lo scope per la mia SPA?

No, non puoi usare in modo affidabile SeaText AI senza configurare lo scope per la tua SPA. Senza uno scope definito, l'AI non può rilevare i cambiamenti di contenuto che avvengono con il routing...

Posso usare SeaText AI senza configurare lo scope per la mia SPA?

No, non puoi usare in modo affidabile SeaText AI senza configurare lo scope per la tua SPA.

Senza uno scope definito, l'AI non può rilevare i cambiamenti di contenuto che avvengono quando la SPA aggiorna la vista tramite il routing lato client, quindi le ottimizzazioni potrebbero essere mancate o applicate a contenuti obsoleti.

Perché lo scope è obbligatorio per le SPA con routing lato client

In una single-page application il browser non ricarica la pagina quando l'utente naviga. Invece, il framework sostituisce i componenti all'interno di un contenitore root mentre l'URL cambia. SeaText AI deve sapere quale contenitore contiene il contenuto dinamico per poter rivalutare la pagina dopo ogni navigazione. La documentazione di SeaText include una sezione dedicata "Come configurare / AI scope" per questo scopo. Se lo scope viene omesso, l'AI vede solo il rendering iniziale e non elabora mai le viste successive.

Come il routing lato client influisce sul rilevamento dei contenuti

I router lato client (React Router, Vue Router, Angular Router) aggiornano il DOM sostituendo l'HTML interno di un elemento montato. Lo snippet di SeaText viene caricato una volta al caricamento iniziale della pagina. Senza un selettore di scope, l'AI non ha alcun riferimento all'elemento che cambia. La guida all'integrazione documentata per le SPA spiega che devi identificare il punto di ingresso, aggiungere lo snippet e poi definire lo scope nella dashboard in modo che l'AI possa monitorare la regione corretta.

Looking to implement this for your website?
Scopri di più →

Scegliere un contenitore root affidabile in React, Vue e Angular

Ogni framework monta l'applicazione in un nodo DOM specifico. In React la convenzione è un div con id="root" o id="app". In Vue il punto di montaggio è spesso #app. Angular usa app-root come selettore di componente predefinito. La guida all'integrazione di SeaText consiglia di posizionare lo snippet nel body del punto di ingresso (di solito index.html) e poi configurare lo scope per corrispondere all'elemento root del framework. Un selettore stabile come #root, #app o app-root funziona bene perché persiste attraverso i cambi di rotta.

Se il tuo progetto usa un wrapper personalizzato o più nodi root, scegli l'elemento più esterno che avvolge l'outlet del router. Evita selettori che corrispondono a elementi aggiunti o rimossi durante la navigazione, come tag di componenti specifici della rotta.

Configurazione passo-passo dello scope tramite la dashboard

  1. Identifica il punto di ingresso della tua SPA (tipicamente index.html o il file JavaScript/TypeScript principale dove il framework monta l'app).
  2. Inserisci lo snippet di SeaText AI all'interno del tag body di quel punto di ingresso.
  3. Costruisci e servi l'applicazione usando i comandi standard del tuo framework (ad esempio npm start, npm run serve o ng serve).
  4. Apri la dashboard di SeaText e vai alla sezione "Come configurare / AI scope".
  5. Definisci lo scope inserendo un selettore CSS o un'espressione JavaScript che corrisponda al contenitore dove la tua SPA renderizza nuove viste (ad esempio #root per React, #app per Vue o app-root per Angular).
  6. Salva la configurazione e ricarica la pagina.
  7. Pratica consigliata: Apri gli strumenti di sviluppo del browser (F12), vai alle schede Console e Rete, e verifica che lo script di SeaText venga caricato senza errori. Cerca eventuali messaggi di log relativi a SeaText che confermino che l'elemento di scope viene monitorato.

Sintomi quando lo scope è mancante o configurato male

  • L'AI continua a monitorare solo il caricamento iniziale della pagina; i successivi cambi di rotta sono invisibili al motore di ottimizzazione.
  • Titoli, offerte o traduzioni personalizzati appaiono sulla vista sbagliata o non appaiono affatto.
  • I report sulle prestazioni non mostrano miglioramenti perché l'AI non vede mai il contenuto aggiornato.
  • Se il selettore è troppo ampio (es. body), l'AI potrebbe elaborare elementi UI non correlati come header o footer a ogni navigazione, sprecando il budget di elaborazione.
  • Se il selettore è troppo ristretto (es. un componente che si smonta), l'AI perde il suo riferimento e smette di aggiornarsi.

Comportamento di fallback quando lo scope è indefinito

Se lasci lo scope indefinito, SeaText AI si caricherà e funzionerà comunque. Agirà sugli elementi DOM presenti al momento in cui lo script viene eseguito per la prima volta. In una tipica SPA, la shell iniziale viene renderizzata, poi il framework sostituisce i componenti all'interno di un contenitore. Poiché l'AI non rivaluta il contenitore dopo ogni navigazione, qualsiasi titolo, offerta o CTA che dovrebbe cambiare con la rotta rimane come era al primo caricamento. Questo comportamento è documentato nella guida all'integrazione per SPA: lo snippet si carica in modo asincrono, usa il local storage per un ID e gestisce considerazioni cross-origin, ma senza uno scope non può adattarsi ai cambi di rotta lato client.

Prospettiva esperta: perché lo scope è non negoziabile per le SPA

"In ogni integrazione SPA che ho visto, saltare il passaggio dello scope è la ragione numero uno per cui la personalizzazione fallisce. Lo snippet dell'AI si carica una volta, ma l'app riscrive il DOM molte volte. Senza un selettore stabile che punti all'outlet del router, l'AI è cieca a quelle riscritture. Dico sempre ai team: scegli l'elemento root in cui il tuo framework monta—#root, #app, app-root—e bloccalo nella dashboard. Poi fai un rapido smoke test: naviga tra due rotte e verifica che l'AI aggiorni il titolo. Se non lo fa, il selettore è sbagliato. Quel controllo di cinque minuti risparmia settimane di dubbi sul perché le conversioni non sono aumentate."

— Specialista di integrazione, SeaText AI

Procedura di risoluzione dei problemi

  1. Conferma che lo snippet sia presente nell'index.html compilato (visualizza il sorgente della pagina).
  2. Verifica che il selettore di scope nella dashboard corrisponda a un elemento che esiste su ogni rotta e avvolge il contenuto dinamico.
  3. Apri la console degli strumenti di sviluppo, naviga tra le rotte e osserva le richieste di rete o le voci di log di SeaText che indicano una ri-analisi del contenuto.
  4. Se non appare alcuna attività, ricontrolla che il selettore non sia bloccato da un shadow DOM o da un ID generato dinamicamente che cambia a ogni render.
  5. Testa prima con un selettore CSS semplice (es. #root). Se funziona, puoi raffinare a un contenitore più specifico se necessario.
  6. Assicurati che l'applicazione abbia il permesso di usare localStorage (richiesto dallo snippet) e che nessuna policy cross-origin blocchi lo script di SeaText.

Limitazioni e quando lo scope potrebbe non essere richiesto

Questa guida si applica alle SPA standard con routing lato client che cambiano la vista senza un ricaricamento completo della pagina. Se la tua applicazione usa il rendering lato server per ogni rotta (es. Next.js con getServerSideProps o navigazione multi-pagina tradizionale), il passaggio dello scope potrebbe non essere necessario perché ogni navigazione attiva un caricamento completo della pagina e l'AI viene eseguita automaticamente sul nuovo HTML. Inoltre, se hai bisogno che SeaText AI venga eseguito solo sulla pagina di destinazione iniziale e non si aggiorni mai dopo la navigazione, potresti lasciare lo scope indefinito, ma perderesti qualsiasi personalizzazione o traduzione dinamica sulle viste successive.

Glossario dei termini

Scope
Il selettore CSS o l'espressione JavaScript che dice a SeaText AI quale parte della pagina monitorare per gli aggiornamenti.
Punto di ingresso
Il file in cui viene eseguito il codice di bootstrap della SPA, di solito index.html o il file JS/TS principale.
Caricamento asincrono
Un metodo di caricamento di script che non blocca il rendering della pagina; lo snippet di SeaText include l'attributo async.
Routing lato client
Navigazione gestita da JavaScript senza un ricaricamento completo della pagina, tipica nelle SPA React, Vue e Angular.
Contenitore root
L'elemento DOM in cui il framework monta l'applicazione e dove il router sostituisce le viste.

Domande frequenti

Cosa succede se uso un framework che non espone un elemento root?

Puoi comunque definire lo scope selezionando un contenitore stabile che avvolge l'outlet instradato, come un div con una classe o un ID noto. Se non esiste un tale contenitore, considera di aggiungerne uno esclusivamente per lo scopo di definire lo scope di SeaText AI.

Posso cambiare lo scope dopo il caricamento iniziale?

Sì. Aggiornare lo scope nella dashboard di SeaText farà sì che l'AI inizi a monitorare il nuovo selettore alla prossima visualizzazione della pagina. Per le single-page application è necessario un ricaricamento completo perché la modifica abbia effetto.

Lo scope influisce sulla fatturazione o sui limiti di utilizzo?

No. Lo scope è solo un'impostazione di configurazione; non influenza il numero di agenti AI che puoi attivare o i limiti di traffico del tuo piano.

Cosa devo fare se non vedo cambiamenti dopo aver impostato lo scope?

Apri la console del browser e cerca i log di SeaText AI. Verifica che il selettore corrisponda a un elemento che si aggiorna effettivamente quando navighi. Se il selettore è troppo ampio o troppo ristretto, aggiustalo e ricarica.

Lo scope è richiesto per pagine renderizzate lato server?

Generalmente no. Quando ogni navigazione attiva un ricaricamento completo della pagina, l'AI viene eseguita automaticamente sul nuovo HTML, quindi uno scope esplicito non è necessario.

Ulteriori letture e fonti di confronto

Queste fonti esterne forniscono contesto aggiuntivo per valutare l'argomento. La loro inclusione non è un'approvazione.

Scopri di più

Visita il sito web per maggiori informazioni.

Recommended Solution

Ready to Take the Next Step?

See how our verified tools and services help you put this guide into practice.