Ho due diversi tipi di account che possono fare cose diverse in un'applicazione singola pagina. Dovrei trasformarlo in un'applicazione per più pagine?

0

Nella mia nuova SPA (applicazione per pagina singola), ho insegnanti, che possono fare test e studenti, che possono sostenere test, iscriversi agli insegnanti e visualizzare i loro voti. Ciò significa che in JavaScript, entrambi avranno azioni molto diverse che possono fare. Ma l'HTML e il CSS, per inciso, sono molto simili. Il mio obiettivo è rendere il codice mantenibile e non avere un tempo di caricamento lento. Ovviamente, non voglio continuare a fare quello che sto facendo attualmente, il che è unire il codice studente e insegnante e solo chiamare ciò che è necessario. Penso che lo farò

  • Crea due pagine, ognuna con i propri file (student/teacher).js/css e common.js/css file
  • Continua a utilizzare una pagina, carica in modo condizionale i componenti Vue per le diverse cose che gli studenti e gli insegnanti possono fare, e hai diversi file js / css che verranno anche caricati in modo condizionale.

Preferisco la seconda opzione, ma penso che la pagina potrebbe essere rallentata perché l'app dovrà attendere il caricamento dei primi file comuni, quindi attendere l'autenticazione da parte del server per stabilire se viene registrato un account studente o insegnante in, quindi caricare più file css / js.

Qualcuno ha una raccomandazione o qualcosa di diverso che dovrei fare?

    
posta Robert Moore 03.06.2018 - 15:13
fonte

2 risposte

1

Se entrambi i gruppi - Sudenti e Insegnanti - alla fine consumeranno la stessa app, farei sicuramente il modo di costruire una SPA. Soprattutto Vue (e gente come React, Angular ecc.) Rende facile la costruzione di componenti personalizzabili. Pertanto, il tuo utente corrente potrebbe avere un ruolo o un tipo ( student o teacher ) e potresti avere componenti insegnante puri, ad es. un componente di classificazione e componenti di puro studente, ad es. un componente di sottomissione. Ma potresti anche avere componenti condivisi, ad es. per la messaggistica.

Il termine SPA non aggiunge vincoli rispetto a ciò che si desidera ottenere. Puoi renderlo multiuso come richiede il tuo modello di dati. Il termine si riferisce al modo di consegnare i file statici al client (browser).

    
risposta data 03.06.2018 - 19:13
fonte
1

Una cosa da tenere a mente è che se crei due pagine e decidi di apportare una modifica, finirai per dover apportare tale modifica in due punti?

Gli insegnanti vorranno vedere ciò che vedranno gli studenti, quindi hai buone ragioni per tenere insieme quel codice. Quello che non vuoi è che gli studenti vedano le risposte o modificino le domande. Quel codice dovrebbe essere in grado di lavorare con il codice sia vedere.

Per quanto riguarda l'autenticazione, sia gli insegnanti che gli studenti ne hanno bisogno. Se faccio un test, voglio ottenere il merito. Quindi avrai bisogno che funzioni in modo tempestivo qualunque cosa tu faccia.

    
risposta data 03.06.2018 - 18:11
fonte

Leggi altre domande sui tag