我正在学习如何使用Nuxt构建生成静态博客,并且遇到了下面的代码以创建包含帖子列表的页面:
<script>
export default {
async asyncData() {
const resolve = require.context("~/content/", true, /\.md$/)
const imports = resolve.keys().map((key) => {
const [, name] = key.match(/\/(.+)\.md$/);
return resolve(key);
});
return {
posts: imports
}
},
}
</script>
我了解它的作用:获取所有markdown文件的列表并将其键映射到文件名,但我不了解const [, name]
的含义,实际上不了解数组内的逗号的含义。
有人可以给我解释一下吗?
谢谢。
诺亚
答案 0 :(得分:1)
在您的情况下,const [, name] = key.match(/\/(.+)\.md$/);
与const name = key.match(/\/(.+)\.md$/)[1]
相同
答案 1 :(得分:0)
这意味着从key.match
返回的数组中获取第二个值,并将其分配给变量name
const [a, b] = [123, 456];
console.log('a:', a, 'b:', b); // a = 123, b = 456
const [, d] = [111, 222];
console.log('d:', d); // d = 222