# νμ΄μ§ λ©ν μ 보 μ€μ
λμ€νΈμμ νμ΄μ§μ λ©ν(meta) νκ·Έ μ 보λ₯Ό μ€μ νλ λ°©λ²μ λν΄ μμλ΄ λλ€.
# νμ΄μ§ head νκ·Έ μ€μ
λμ€νΈλ‘ μ μλ μ ν리μΌμ΄μ μ head νκ·Έ κ°μ κΈ°λ³Έμ μΌλ‘ λμ€νΈ μ€μ νμΌμ μ μλμ΄ μμ΅λλ€.
// nuxt.config.js
export default {
head: {
title: 'learn-nuxt',
htmlAttrs: {
lang: 'en',
},
meta: [
{ charset: 'utf-8' },
{ name: 'viewport', content: 'width=device-width, initial-scale=1' },
{ hid: 'description', name: 'description', content: '' },
],
link: [{ rel: 'icon', type: 'image/x-icon', href: '/favicon.ico' }],
},
}
μ μ½λκ° μ μ©λ νμ΄μ§λ λΈλΌμ°μ μ κ·Έλ €μ‘μ λ λ€μκ³Ό κ°μ HTML μ½λλ‘ λ³νλ©λλ€.
<html lang="en">
<head>
<title>learn-nuxt</title>
<meta data-n-head="ssr" charset="utf-8">
<meta data-n-head="ssr" name="viewport" content="width=device-width, initial-scale=1">
<meta data-n-head="ssr" data-hid="description" name="description" content="">
<link data-n-head="ssr" rel="icon" type="image/x-icon" href="/favicon.ico">
</head>
<!-- ... -->
μ΄ μ€μ μ λͺ¨λ νμ΄μ§μ λμΌνκ² μ μ©λ©λλ€. μ¬κΈ°μ νμ΄μ§λ³λ‘ λ€λ₯Έ head νκ·Έλ₯Ό μ€μ νκ³ μΆλ€λ©΄ μ΄λ»κ² ν΄μΌ ν κΉμ?
# νμ΄μ§λ³ head νκ·Έ μ€μ
νμ΄μ§λ³λ‘ λ€λ₯Έ head νκ·Έλ₯Ό μ€μ νκ³ μΆμ κ²½μ°μλ κ° νμ΄μ§ μ»΄ν¬λνΈμ μλμ κ°μ μμ±μ μΆκ°ν©λλ€.
<!-- page/home.vue -->
<script>
export default {
data() {
return {
str: 'hi'
}
},
head: {
title: 'νμ΄μ§ νμ΄ν',
meta: [
{
hid: 'description',
name: 'description',
content: 'νμ΄μ§ μ€λͺ
λ΄μ©',
},
],
link: [
{
rel: 'stylesheet',
href: 'https://fonts.googleapis.com/css?family=Roboto&display=swap'
}
]
},
}
</script>
λ§μ½ μ»΄ν¬λνΈμ μ μλμ΄ μλ λ·° μΈμ€ν΄μ€ λ°μ΄ν°λ μ»΄ν¨ν°λ μμ±μ λ©ν νκ·Έμ κ°μΌλ‘ μ°κ²°νκ³ μΆλ€λ©΄ μλμ κ°μ΄ ν¨μ ννλ‘ μμ±ν©λλ€.
<!-- pages/products/_id.vue -->
<script>
export default {
data() {
return {
productName: 'λ°μν κ³Όμ'
}
},
head() {
return {
title: `μν μμΈ νμ΄μ§ - ${this.productName}`
}
},
}
</script>
κΈ°ν meta νκ·Έ μ€μ λ°©λ²μ λν΄μλ μλ λ¬Έμλ₯Ό μ°Έκ³ ν©λλ€.
# Open Graph νκ·Έ μ€μ
OG(Open Graph) νκ·Έλ νΉμ νμ΄μ§μ λ§ν¬λ₯Ό SNS μμμ 곡μ ν λ ν΄λΉ νμ΄μ§μ μ λ³΄κ° μ λλ¬λ μ μλλ‘ μ§μν΄ μ£Όλ λ©ν νκ·Έμ λλ€.
μμ κ°μ΄ νμ΄μ€λΆμ΄λ μΉ΄μΉ΄μ€ν‘ λ± SNS μμΌλ‘ νΉμ λ§ν¬λ₯Ό 곡μ νλ©΄ ν΄λΉ νμ΄μ§μ title, description, image λ±μ μ¬μ΄νΈ μ 보λ₯Ό λ°λ‘ νμΈν μ μμ΅λλ€. μμμ μλ΄ν head
μμ±μ μ΄μ©ν΄ νμ΄μ§ λ³λ‘ λ€μκ³Ό κ°μ΄ μ μν©λλ€.
<script>
export default {
head: {
title: 'μν μμΈ νμ΄μ§',
meta: [
{
hid: 'og:title',
property: 'og:title',
content: 'μν μμΈ νμ΄μ§'
},
{
hid: 'og:description',
property: 'og:description',
content: 'μνμ μμΈ μ 보λ₯Ό νμΈν΄λ³΄μΈμ'
},
{
hid: 'og:image',
property: 'og:image',
content: 'http://placeimg.com/640/480/fashion'
},
]
}
}
</script>
OG νκ·Έμ μΆκ°μ μΈ μμ±λ€μ μλ 곡μ λ¬Έμλ₯Ό μ°Έκ³ νμΈμ π
β Nuxt Deployment Axios for Nuxt β