nuxt-image へ再構築する

nuxt-image に再構築する場合のサンプル設定とサンプルです。

ここでは、provider に imgix を利用している前提で記述します。

設定

nuxt-image の provider 設定が必要です。

nuxt.config.js
{
  image: {
    imgix: {
      baseURL: "https://images.microcms-assets.io/",
    },
  },
}

あわせて rehype-image-salt の設定も行います。

nuxt.config.js
{
  content: {
    markdown: {
      rehypePlugins: [
        [
          "@hankei6km/rehype-image-salt",
          {
            baseURL: "https://images.microcms-assets.io/",
            rebuild: {
              tagName: "nuxt-img",
              baseAttrs: 'provider="imgix" data-salt-q=""',
            },
          },
        ],
      ],
    },
  }
}
  • baseURLprovider と同じ値にする

  • tagNamenuxt-imgまたはnuxt-picture

  • baseAttrsprovider="imgix" data-salt-q=""

    • provider は Provider を指定するため
    • data-salt-q は CMS 等が付与したクエリーを除去するため(nuxt-image とコンフリクトする)
    • コンテンツ全体でのデフォルト値があるなら他のパラメーター(fit sizes modifiers など)も利用可能

記述例

sizes

![林道](https://...image.jpg){
  width="600" height="337"
  sizes="sm:100vw md:50vw lg:400px"
}

林道

fit

![林道](https://...image.jpg){
  width="200" height="400"
  fit="cover"
}

林道

imgix best practices

![Man Using Laptop](https://...image.jpg){
  width="300" height="400"
  fit="cover"
  modifiers="auto=format,compress&crop=faces"
}

![Woman Holding Macbook](https://...image.jpg){
  width="300" height="400"
  fit="cover"
  modifiers="auto=format,compress&crop=faces"
}

Man Using Laptop

Woman Holding Macbook

ベース属性を利用することで「imgix best practices」をより簡易に記述できます。

クレジット

このページをGitHubで編集する 更新日 Tue, Dec 21, 2021