我刚刚开始使用 adonisjs 来使网站动态化,用 block 替换重复元素。在本例中,我使用的是 View 。问题是,我不明白我做错了什么。我有一个名为 mainpage.html 和 adonis.html 的 html 页面。 在mainpage.html
<!DOCTYPE html>
{# resources/views/mainpage.html #}
<html lang="en">
<head>
<title>NextAnime</title>
</head>
<body>
{% block latestEntries %}
{% endblock %}
</body>
</html>
在 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:官方文档对 {% extends '' %} 部分并不清楚。我是否将 html 文档的名称(主页)或分配的别名放入 HomeController.js 文件(主)中?
在 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)
}
}
最后,我如何知道我何时到达列表的末尾,拜托,在阿多尼斯。
最佳答案
我尝试了以下两种情况:
- 更改了 html 文档的名称(更改为 mainpage1.html),但未更改
{% extends '' %}
中的名称(保留为 mainpage)。 - 更改了
{% extends '' %}
中的名称(更改为 mainPage1,但模板名称为 mainPage.html)。
根据我的尝试,我了解以下内容:
- 在扩展模板时,您必须输入不带“.html”扩展名的模板名称(在本例中为“mainPage.html”,并在扩展
{% extends 'mainPage' %}
)。当 Controller 使用response.send(view)
发送响应时,它会使用不包括.html 的模板名称从
扩展名。resources/views/
目录获取模板
请尝试与模板扩展和包含相关的不同方法。
关于javascript - 如何创建 adonis.js View ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36383711/