2016-04-03 1 views
1

Je viens de commencer à utiliser adonisjs pour rendre un site dynamique en remplaçant les éléments répétés par des blocs. Dans ce cas, j'utilise des vues. Le problème est, je ne peux pas comprendre ce que je fais mal. J'ai une page html nommée mainpage.html, et adonis.html. Dans mainpage.htmlComment créer une vue adonis.js?

<!DOCTYPE html> 

{# resources/views/mainpage.html #} 
<html lang="en"> 
<head> 
<title>NextAnime</title> 
</head> 
<body> 
{% block latestEntries %} 
{% endblock %} 
</body> 
</html> 

Dans adonis.html

{# resources/views/adonis.html #} 
{% extends 'mainpage' %} 

var rangeEntries = [0,1,2,3,4] 

{% block latestEntries %} 

    {% for i in range %} 
    <div class="row"> 
     <div class="col-xs-3"> 
      <a href="anotherpage.html"><img src="../../public/images/justanimage.jpeg" id="latest_entry_image" alt="Some problem"></a> 
     </div> 
     <div class="col-xs-9"> 
      <a href="anotherpage.html">name of anime</a> 
      <p>Chapters/Volumes :</p> 
      <p>Date</p> 
     </div> 
    </div><br> 
{% endfor %} 
{% endblock %} 

PS: la documentation officielle n'est pas clair sur le {% extends '' %} partie. Dois-je mettre le nom du document html (page principale) ou l'alias que j'assigne dans le fichier HomeController.js (main)?

En HomeController.js:

class HomeController { 

    * index (request, response) { 
    const view = yield response.view('adonis') 
    response.send(view) 
    } 
    * main (request, response) { 
    const view = yield response.view('mainpage') 
    response.send(view) 
    } 
} 

Et enfin, comment je sais quand je suis arrivé à la fin d'une liste en général, adonis, s'il vous plaît.

Répondre

1

J'ai essayé les deux cas suivants:

  • a changé le nom du document html (modifié à mainpage1.html) mais n'a pas changé le nom dans le {% extends '' %} (gardé comme mainpage).
  • Le nom a été modifié dans {% extends '' %} (remplacé par mainPage1 mais le nom de modèle est mainPage.html).

D'après ce que j'ai essayé, je compris ce qui suit:

  • Vous devrez mettre le nom du modèle avec les extenstion .html tout en étendant un modèle (dans ce cas ' mainPage.html 'et tout en prolongeant {% extends 'mainPage' %}). Lorsque le contrôleur envoie une réponse en utilisant response.send(view), il obtient le modèle à partir du répertoire resources/views/ en utilisant le nom du modèle à l'exclusion de l'extension .html.

Veuillez essayer les différentes méthodes liées à l'extension et à l'inclusion de modèles.