vue.config.js 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. module.exports = {
  2. css: {
  3. loaderOptions: {
  4. less: {
  5. javascriptEnabled: true
  6. }
  7. }
  8. },
  9. chainWebpack: config => {
  10. const svgRule = config.module.rule("svg");
  11. // 清除已有的所有 loader。
  12. // 如果你不这样做,接下来的 loader 会附加在该规则现有的 loader 之后。
  13. svgRule.uses.clear();
  14. // 添加要替换的 loader
  15. svgRule.use("vue-svg-loader").loader("vue-svg-loader");
  16. },
  17. devServer: {
  18. proxy: {
  19. "/api": {
  20. target: "http://localhost:3000",
  21. bypass: function(req, res) {
  22. if (req.headers.accept.indexOf("html") !== -1) {
  23. console.log("Skipping proxy for browser request.");
  24. return "/index.html";
  25. } else if (process.env.MOCK !== "none") {
  26. const name = req.path
  27. .split("/api/")[1]
  28. .split("/")
  29. .join("_");
  30. const mock = require(`./mock/${name}`);
  31. const result = mock(req.method);
  32. delete require.cache[require.resolve(`./mock/${name}`)];
  33. return res.send(result);
  34. }
  35. }
  36. }
  37. }
  38. }
  39. };