123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- const path = require("path");
- const AntDesignThemePlugin = require("antd-theme-webpack-plugin");
- const options = {
- antDir: path.join(__dirname, "./node_modules/ant-design-vue"),
- stylesDir: path.join(__dirname, "./src"),
- varFile: path.join(
- __dirname,
- "./node_modules/ant-design-vue/lib/style/themes/default.less"
- ),
- mainLessFile: "",
- themeVariables: ["@primary-color"],
- generateOnce: false
- };
- const themePlugin = new AntDesignThemePlugin(options);
- module.exports = {
- css: {
- loaderOptions: {
- less: {
- modifyVars: {
- "primary-color": "#1DA57A"
- },
- javascriptEnabled: true
- }
- }
- },
- configureWebpack: {
- plugins: [themePlugin]
- },
- chainWebpack: config => {
- const svgRule = config.module.rule("svg");
- // 清除已有的所有 loader。
- // 如果你不这样做,接下来的 loader 会附加在该规则现有的 loader 之后。
- svgRule.uses.clear();
- // 添加要替换的 loader
- svgRule.use("vue-svg-loader").loader("vue-svg-loader");
- },
- devServer: {
- proxy: {
- "/api": {
- target: "http://localhost:3000",
- bypass: function(req, res) {
- if (req.headers.accept.indexOf("html") !== -1) {
- console.log("Skipping proxy for browser request.");
- return "/index.html";
- } else if (process.env.MOCK !== "none") {
- const name = req.path
- .split("/api/")[1]
- .split("/")
- .join("_");
- const mock = require(`./mock/${name}`);
- const result = mock(req.method);
- delete require.cache[require.resolve(`./mock/${name}`)];
- return res.send(result);
- }
- }
- }
- }
- }
- };
|