JetBrains / svg-sprite-loader

Webpack loader for creating SVG sprites.
MIT License
2.01k stars 272 forks source link

SpriteSymbol is not a constructor #466

Open Dravenxu opened 3 years ago

Dravenxu commented 3 years ago

can not load page

chrome console error _node_modules_svg_baker_runtime_browser_symbol_js__WEBPACK_IMPORTED_MODULE_0__ is not a constructor


1625793882(1) 1625793920(1)

const path = require('path'); const HtmlWebpackPlugin = require('html-webpack-plugin'); const Webpack = require('webpack'); const VueLoaderPlugin = require('vue-loader/lib/plugin-webpack5');

console.log('process.env.NODE_ENV :>> ', process.env.NODE_ENV);

module.exports = { target: 'web', entry: './src/main.js', module: { rules: [ { test: /.js$/, exclude: path.resolve(__dirname, "../node_modules"), use: [ { loader: 'babel-loader', }, ], }, { test: /.vue$/, use: [ { loader: 'vue-loader', }, ], }, { test: /.svg$/, loader:'svg-sprite-loader', options: { symbolId: 'icon-[name]', esModule: true, }, include: path.resolve(dirname, "../src/icons"), }, { test: /.png|jpg|gif|jpeg|svg|eot|ttf|woff|woff2/, type: 'asset', exclude: path.resolve(dirname, "../src/icons"), parser: { dataUrlCondition: { maxSize: 10 * 1024, }, }, generator: { filename: 'images/[base]', }, }, { test: /.txt|xlsx/, type: 'asset', generator: { filename: 'files/[base]', }, }, ], }, plugins: [ new HtmlWebpackPlugin({ template: 'src/index.html', }), new VueLoaderPlugin(), new Webpack.ProvidePlugin({ Vue: ['vue/dist/vue.esm.js', 'default'], }) ], resolve: { alias: { "@": path.resolve(__dirname, "../src") }, extensions: ['.js', '.vue', '.css'], } };

packjson.js

"devDependencies": { "@babel/core": "^7.12.10", "@babel/plugin-transform-runtime": "^7.12.10", "@babel/preset-env": "^7.12.11", "@babel/runtime": "^7.14.6", "@babel/runtime-corejs3": "^7.14.7", "babel-loader": "^8.2.2", "clean-webpack-plugin": "^3.0.0", "cross-env": "^7.0.3", "css-loader": "^5.0.1", "css-minimizer-webpack-plugin": "^3.0.2", "eslint": "^7.16.0", "eslint-config-prettier": "^7.1.0", "eslint-plugin-prettier": "^3.3.0", "eslint-plugin-vue": "^7.3.0", "html-webpack-plugin": "5.3.2", "husky": "^4.3.6", "lint-staged": "^10.5.3", "mini-css-extract-plugin": "^1.3.3", "node-sass": "^5.0.0", "postcss": "^8.2.1", "postcss-loader": "^4.1.0", "postcss-preset-env": "^6.7.0", "prettier": "^2.2.1", "sass": "^1.30.0", "sass-loader": "^10.1.0", "style-loader": "^2.0.0", "svg-sprite-loader": "^6.0.9", "svgo": "^2.3.1", "terser-webpack-plugin": "^5.1.4", "vue-eslint-parser": "^7.3.0", "vue-loader": "^15.9.7", "vue-template-compiler": "^2.6.12", "webpack": "^5.41.1", "webpack-cli": "^4.7.2", "webpack-dev-server": "^3.11.2" }, "dependencies": { "axios": "0.21.1", "core-js": "^3.15.2", "element-ui": "2.15.3", "js-cookie": "^2.2.1", "normalize.css": "^8.0.1", "vue": "^2.6.14", "vue-router": "^3.5.2", "vuex": "3.6.2" }

Boom-BO commented 2 years ago

这个问题我也遇到了,解决了吗兄弟?