NuxtJS & SASS Loader - 在生产环境中使用 sass-loader (SCSS) 构建

NuxtJS & SASS Loader - Build with sass-loader (SCSS) on production

我添加了这些行以在开发(本地)服务器上使用 sass-loader 进行构建:

nuxt.config.js

module.exports = {

  mode: 'spa',

  build: {
    analyze: {
      analyzerMode: 'static',
      generateStatsFile: true,
      statsFilename: 'webpack-stats.json',
      openAnalyzer: false
    },
    vendor: [
      'axios',
      'vuetify'
    ],
    extend (config) {
      config.resolve.alias['vue'] = 'vue/dist/vue.common'
      const vueLoader = config.module.rules.find((rule) => rule.loader === 'vue-loader')
      vueLoader.options.loaders.scss = 'vue-style-loader!css-loader!sass-loader?' + JSON.stringify({
        includePaths: [
          path.resolve(__dirname), 'node_modules'
        ]
      })
    }
  }

  ...
}

问题出在生产上,我有这个错误:

Cannot find module "!!vue-style-loader!css-loader!../../../node_modules/vue-loader/lib/style-compiler/index?{"vue":true,"id":"data-v-7ef06ffa","scoped":true,"hasInlineConfig":true}!sass-loader?{"includePaths":["/app/config","node_modules"]}!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./index.vue"

此问题可在 Nuxt.js community (#c6871) 上找到

好的,我在 nuxt.config.js 上不需要这个配置,只需安装 sass-loadernode-sass 在 "dependencies" 中,不在 "devDependencies".