nuxt-link 显示 slug 不是 id
nuxt-link display slug not id
这是我的代码,用于显示我的博客文章列表:
<nuxt-link :to="postLink" class="post-preview">
<article>
<div class="post-thumbnail" :style="{backgroundImage: 'url(' + thumbnail + ')'}"></div>
<div class="post-content">
<h1>{{ title }}</h1>
<p>{{ previewText }}</p>
</div>
</article>
</nuxt-link>
</template>
单击博客 post 时调用 post 链接函数,代码如下:
computed: {
postLink() {
return this.isAdmin
? "/admin/" + this.id + "?" + this.slug
: "/posts/" + this.id + "?" + this.slug;
}
}
问题是我不想在 URL 中显示 Firebase 密钥 ID,我想显示 slug。跟踪 Firebase 密钥 ID 在 Google Analytics 中可读性不强。我将 slug 保存在我的 Firebase DB 中,我可以在我的页面上访问 slug,但我不能只调用路径中的 slug,出于某种原因我必须包含 id。我现在正在使用一个解决方法,即添加一个查询字符串,但我真正想要的是只在 URL 中显示 slug。必须有办法做到这一点。您可以在我的网站上查看实际效果:https://igeddit.ca
每个post在Nuxt中显示为这个文件结构:
提前致谢...
感谢 ManUtopiK 的回复,但对于不知道的人来说,这是一个模糊的答案。自发布我的问题以来,我找到了答案。因此,对于那些寻找答案的人,我确实将之前的文件夹结构从 posts/_id/index.vue 更改为 posts/_slug/index.vue.
你这样做是为了让鼻涕虫成为路线。
上面的代码现在更改为:
<nuxt-link :to="postLink" class="post-preview">
....
postLink() {
return this.isAdmin
? "/admin/" + this.id
: { name: "posts-slug", params: { id: this.id, slug: this.slug } };
}
这段代码传递了 id 和 slug。鼻涕虫预计会出现在路线中。注意:您可以从 .nuxt folder/router.js.
中获取名称:"posts-slug"
这是我的代码,用于显示我的博客文章列表:
<nuxt-link :to="postLink" class="post-preview">
<article>
<div class="post-thumbnail" :style="{backgroundImage: 'url(' + thumbnail + ')'}"></div>
<div class="post-content">
<h1>{{ title }}</h1>
<p>{{ previewText }}</p>
</div>
</article>
</nuxt-link>
</template>
单击博客 post 时调用 post 链接函数,代码如下:
computed: {
postLink() {
return this.isAdmin
? "/admin/" + this.id + "?" + this.slug
: "/posts/" + this.id + "?" + this.slug;
}
}
问题是我不想在 URL 中显示 Firebase 密钥 ID,我想显示 slug。跟踪 Firebase 密钥 ID 在 Google Analytics 中可读性不强。我将 slug 保存在我的 Firebase DB 中,我可以在我的页面上访问 slug,但我不能只调用路径中的 slug,出于某种原因我必须包含 id。我现在正在使用一个解决方法,即添加一个查询字符串,但我真正想要的是只在 URL 中显示 slug。必须有办法做到这一点。您可以在我的网站上查看实际效果:https://igeddit.ca
每个post在Nuxt中显示为这个文件结构:
提前致谢...
感谢 ManUtopiK 的回复,但对于不知道的人来说,这是一个模糊的答案。自发布我的问题以来,我找到了答案。因此,对于那些寻找答案的人,我确实将之前的文件夹结构从 posts/_id/index.vue 更改为 posts/_slug/index.vue.
你这样做是为了让鼻涕虫成为路线。
上面的代码现在更改为:
<nuxt-link :to="postLink" class="post-preview">
....
postLink() {
return this.isAdmin
? "/admin/" + this.id
: { name: "posts-slug", params: { id: this.id, slug: this.slug } };
}
这段代码传递了 id 和 slug。鼻涕虫预计会出现在路线中。注意:您可以从 .nuxt folder/router.js.
中获取名称:"posts-slug"