跨多个目录/多个分页的 11ty 分页
11ty pagation across multiple directories / multiple pagation
我正在使用 Eleventy/11ty 站点生成器并且我有一个结构如下的 myData 对象
[ {name: one, data: [1,2,3]},
{name: two, data: [1,2,3,4]} ]
我想为每个目录生成一组分页目录,例如
/one/1.html, /one/2.html etc
/two/1.html, /two/2.html etc
我可以使用
pagination:
data: myData
size: 1
alias: test
permalink: "{{ test.name | slug }}/index.html"
生成单个 html 文件 (/one/index.html
),其中包含名为“one”的对象的所有数据。
但是我不知道如何对该数据进行额外分页以获得所需的结构。
您应该能够使用 computed data + JS front matter 来让它工作:
~~~js
{
pagination: {
data: "flattenedData",
size: 1,
alias: "test",
},
permalink: "{{ test.name | slugify }}/{{ test.data }}",
eleventyComputed: {
flattenedData: ({ myData }) =>
myData.flatMap(({ name, data }) =>
data.map(d => ({ name, data: d }))
)
}
}
~~~
我正在使用 Eleventy/11ty 站点生成器并且我有一个结构如下的 myData 对象
[ {name: one, data: [1,2,3]},
{name: two, data: [1,2,3,4]} ]
我想为每个目录生成一组分页目录,例如
/one/1.html, /one/2.html etc
/two/1.html, /two/2.html etc
我可以使用
pagination:
data: myData
size: 1
alias: test
permalink: "{{ test.name | slug }}/index.html"
生成单个 html 文件 (/one/index.html
),其中包含名为“one”的对象的所有数据。
但是我不知道如何对该数据进行额外分页以获得所需的结构。
您应该能够使用 computed data + JS front matter 来让它工作:
~~~js
{
pagination: {
data: "flattenedData",
size: 1,
alias: "test",
},
permalink: "{{ test.name | slugify }}/{{ test.data }}",
eleventyComputed: {
flattenedData: ({ myData }) =>
myData.flatMap(({ name, data }) =>
data.map(d => ({ name, data: d }))
)
}
}
~~~