Nuxt SSR中SEO的本地化元标记修复(源代码中)只是插件
我在Nuxt SSR中固定了动态磁头(标题和描述或更多) 正常配置下,如果无法正常工作,该怎么办:Nuxt SSR中SEO的本地化元标记修复(源代码中)只是插件,seo,nuxt.js,title,meta,head,Seo,Nuxt.js,Title,Meta,Head,我在Nuxt SSR中固定了动态磁头(标题和描述或更多) 正常配置下,如果无法正常工作,该怎么办: 在nuxt.config.js中添加插件 {src:'~/plugins/numxt meta',ssr:true} 在文件夹插件中创建numxt meta.js,然后打开go write 创建defaultMeta 示例ru和en标题和说明 export default ({ app, route }) => { app.head.title = 'Default title';
{src:'~/plugins/numxt meta',ssr:true}
export default ({ app, route }) => {
app.head.title = 'Default title';
app.head.meta = [...defaultMeta,
{ hid: 'description', name: 'description', content: 'Default description' },
{ name: 'og:title', content: 'Default description' },
{ name: 'og:description', content: 'Default description' }];
// Example: Set ru and en lang title description for index page
if (route.name === 'index-en') {
app.head.title = 'English title';
app.head.meta = [...defaultMeta,
{ hid: 'description', name: 'description', content: 'English description' },
{ name: 'og:title', content: 'English description' },
{ name: 'og:description', content: 'English description' }];
}
else if (route.name === 'index-ru') {
app.head.title = 'Russian title';
app.head.meta = [...defaultMeta,
{ hid: 'description', name: 'description', content: 'Russian description' },
{ name: 'og:title', content: 'Russian description' },
{ name: 'og:description', content: 'Russian description' }];
}
};
如果您有一个自定义文件routes.config.js
app.head.title = 'Default title';
app.head.meta = [...defaultMeta,
{ hid: 'description', name: 'description', content: 'Default description' },
{ name: 'og:title', content: 'Default description' },
{ name: 'og:description', content: 'Default description' }];
// find in routes.config.js
const findRoute = routesConfig.find($route => $route.name === route.name);
// check findRoute
if (typeof findRoute !== 'undefined') {
// check object route
if (findRoute.meta && findRoute.title) {
// set title and meta
app.head.title = findRoute.title;
app.head.meta = [...defaultMeta, ...findRoute.meta];
}
}
我的英语不是很好,因为我是俄罗斯人。我希望这个生活黑客会有用我投票结束这个问题,因为它不是一个问题。
app.head.title = 'Default title';
app.head.meta = [...defaultMeta,
{ hid: 'description', name: 'description', content: 'Default description' },
{ name: 'og:title', content: 'Default description' },
{ name: 'og:description', content: 'Default description' }];
// find in routes.config.js
const findRoute = routesConfig.find($route => $route.name === route.name);
// check findRoute
if (typeof findRoute !== 'undefined') {
// check object route
if (findRoute.meta && findRoute.title) {
// set title and meta
app.head.title = findRoute.title;
app.head.meta = [...defaultMeta, ...findRoute.meta];
}
}
Vue.mixin({
head() {
// Here is logic title or description
return {
title: '',
meta: []
}
},
});