javascript - 如何自定义nuxt默认的html模板

标签 javascript html vue.js nuxt.js

我尝试从 Nuxt 应用程序自定义默认页面,但文档很差:

https://nuxtjs.org/guide/views#document

例如,如果我只想获得标题怎么办?或者只有头部的链接?

{{ HEAD.links }}

还是只有元数据?

{{ HEAD.meta }}

我不知道语法,这是 Handlebars 还是类似的东西?

谢谢!

最佳答案

如果查看源代码,您只能找到 4 个自定义元:

  • HTML_ATTRS
  • BODY_ATTRS
  • 负责人
  • BODY_SCRIPTS

参见 https://github.com/nuxt/nuxt.js/blob/ef7a42649dcee7e65886b2db1a329deecd93aff2/lib/core/meta.js#L40-L45


HEAD 元数据不是对象,而是字符串连接:

// Get vue-meta context
const m = await this.getMeta(url)

...

// HEAD tags
meta.HEAD =
  m.meta.text() +
  m.title.text() +
  m.link.text() +
  m.style.text() +
  m.script.text() +
  m.noscript.text()

所以你不能得到{{ HEAD.links }}


但是,从您的 nuxt.config.js 文件中,您可以覆盖所有 HEAD 数据。

例如。如果您只想保留 title:

替换:

head: {
  title: 'starter',
  meta: [
    { charset: 'utf-8' },
    { name: 'viewport', content: 'width=device-width, initial-scale=1' },
    { hid: 'description', name: 'description', content: 'Nuxt.js project' }
  ],
  link: [
    { rel: 'icon', type: 'image/x-icon', href: '/favicon.ico' }
  ]
}

通过:

head: {
  title: 'starter'
},

关于javascript - 如何自定义nuxt默认的html模板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50392288/

相关文章:

javascript - 如何仅针对用户选择的项目从数据库中获取列值到弹出表单上?

javascript - 如何在循环内将 Object.entry 中的值与另一个键值相乘?

javascript - Vue路由器从默认 View 返回时清除历史记录API?

javascript - 是否可以在 Javascript 中为同一个事件处理程序实现 2 个函数?

html - 如何用 CSS 覆盖 HTML body bgcolor 属性?

javascript - 我如何使用 vuelidate 验证具有 N 个元素的数组的第 N 个元素

javascript - 防止鼠标悬停时元素被删除

javascript - com.facebook.react.common.JavascriptException : Requiring unknown module "./locale/ID". ,

javascript - 在 ajax 请求期间从查询字符串 url 中删除 'X-Requested-With'

javascript - 在查看完所有图像后,循环浏览画廊仅开始淡入/淡出图像