Nodejs/Express: Erreur: Échec de la recherche de la vue “d'erreur” dans le répertoire de vues
J'ai changé mon nodejs modèle à moteur de plus de ejs (de jade). Quand je lance mon app.js avec mon ejs modèle, je reçois une série de "l'Échec de la consultation de la vue "erreur" dans la vue" des journaux.
Parmi lesquels:
GET /css/bootstrap.min.css 500 12.588 ms - 1390
Error: Failed to lookup view "error" in views directory
...
GET /css/clean-blog.min.css
Error: Failed to lookup view "error" in views directory
...
GET /js/bootstrap.min.js
Error: Failed to lookup view "error" in views directory
...
GET /js/jquery.js
Error: Failed to lookup view "error" in views directory
Chose est que la plupart de ces dépendances sont inclus dans le modèle lui-même (via des balises de script). Quel est le bon endroit pour obtenir ces pour des travaux en express? Il semble que l'express en fin de compte ne doit pas être à la recherche de ces dans le views
dossier (car elles ne sont pas vues).
Comment avez-vous d'installation EJS? Avez-vous
Avez-vous ajouté
oui, j'ai utilisé
app.set("view engine" ...
?Avez-vous ajouté
app.use(express.static('public'));
?oui, j'ai utilisé
app.set('view engine', 'ejs');
@Molda je suis en utilisant app.use(express.static(path.join(__dirname, 'public')));
OriginalL'auteur ApathyBear | 2016-02-24
Vous devez vous connecter pour publier un commentaire.
Assurez-vous que votre Express App a cette installation, la mise en page actuelle, il semble que vous avez.
Il est assez normal pour les vues qui se sont rendus par
res.render()
à être placé dans un "point de Vue" répertoire de niveau supérieur de votre application. Leexpress-generator
utilise en fait que la configuration de vue. Vous pouvez changer cela en modifiant la ligne ci-dessousLe dossier public est statique des actifs ou pour une utilisation avec d'autres avant la fin de cadres comme Angulaire ou de Réagir. Cependant, vous n'avez même pas besoin d'utiliser le dossier public, vous pouvez en faire ce que vous voulez et vous pouvez déclarer plusieurs répertoires statiques. La motivation principale est sans doute que ces points de vue besoin d'avoir les données injectées et plusieurs modèles réunis dans certains cas.
Du sens. Merci pour éclaircir cela!
OriginalL'auteur peteb
Il semble que l'Express ne trouvez pas vos fichiers, de sorte que votre pauvre petit serveur voulez retourner une erreur, mais votre erreur fichier est manquant dans
views
répertoire.Dans le répertoire de vues, il suffit de créer un fichier appelé erreur.jade.
Ensuite, vous avez à la recherche où l'Express recherche de vos fichiers encore.
Cool. Je n'ai pas vérifier, mais je pense que le message vient de l'Exprimer, donc l'erreur, et le problème est le même pour n'importe quel moteur de vue, Pug/Jade, Ejs et ainsi de suite.
OriginalL'auteur Plaute