function requireUniPostcss() { const Module = require('module'); const path = require('path'); const postcssPath = require.resolve('@vue/cli-service/node_modules/postcss'); const postcssPackagePath = require.resolve('@vue/cli-service/node_modules/postcss/package.json'); const uniPostcssPath = path.normalize( require.resolve('@dcloudio/vue-cli-plugin-uni/packages/postcss') ); const originalResolveFilename = Module._resolveFilename; Module._resolveFilename = function resolvePostcss(request, parent, isMain, options) { const parentFile = parent && parent.filename ? path.normalize(parent.filename) : ''; if (parentFile === uniPostcssPath) { if (request === 'postcss') { return postcssPath; } if (request === 'postcss/package.json') { return postcssPackagePath; } } return originalResolveFilename.call(this, request, parent, isMain, options); }; try { return require('@dcloudio/vue-cli-plugin-uni/packages/postcss'); } finally { Module._resolveFilename = originalResolveFilename; } } module.exports = { plugins: [ requireUniPostcss()(), require('autoprefixer')(), ], };