Измените тему antd в create-реакции-приложение, не удаляя веб-пакет - PullRequest
0 голосов
/ 28 сентября 2018

Имеются серьезные проблемы с изменением antd в моем приложении реакции.Я определенно не хочу пытаться извлечь файл webpack config.js, так как я определенно не очень хорош с webpack.И я не хочу, чтобы мой сайт выглядел как клон antd.Тем не менее, я пробовал многочисленные методы, такие как config-override.js.Темы в package.json, ничего из этого не работает!Nuts!Вот мой package.json:

{
  "name": "gui",
  "version": "0.1.0",
  "private": true,
  "dependencies": {
    "antd": "^3.9.3",
    "axios": "^0.18.0",
    "babel-cli": "^6.24.1",
    "babel-core": "^6.25.0",
    "babel-loader": "^7.1.1",
    "babel-plugin-transform-class-properties": "^6.24.1",
    "babel-preset-env": "^1.5.2",
    "babel-preset-react": "^6.24.1",
    "css-loader": "^0.28.4",
    "dev-server": "0.0.2",
    "live-server": "^1.2.0",
    "node-sass": "^4.5.3",
    "normalize.css": "^7.0.0",
    "react": "^16.5.2",
    "react-app-rewire-antd": "^1.0.3",
    "react-app-rewire-less": "^2.1.3",
    "react-dom": "^16.5.2",
    "react-router-dom": "^4.3.1",
    "react-scripts": "1.1.5",
    "sass-loader": "^6.0.6",
    "style-loader": "^0.18.2",
    "ts-import-plugin": "^1.5.5",
    "validator": "^8.0.0",
    "webpack": "^3.1.0",
    "webpack-dev-server": "^2.5.1"
  },
  "scripts": {
    "start": "react-app-rewired start",
    "build": "react-app-rewired build",
    "test": "react-app-rewired test --env=jsdom",
    "eject": "react-scripts eject",
    "dev-server": "webpack-dev-server"
  },
  "devDependencies": {
    "babel-plugin-import": "^1.9.1",
    "react-app-rewired": "^1.6.2",
    "ts-loader": "^4.4.2",
    "typescript": "^3.1.1"
  },
  "theme": {
    "primary-color": "#1DA57A",
    "menu-bg": "#1DA57A"
  }
}

и мой config-overrides.js:

const { injectBabelPlugin } = require('react-app-rewired');
const rewireLess = require('react-app-rewire-less');

module.exports = function override(config, env) {
  config = injectBabelPlugin(
    ['import', { libraryName: 'antd', libraryDirectory: 'es', style: true }], // change importing css to less
    config,
  );
  config = rewireLess.withLoaderOptions({
    modifyVars: { "@primary-color": "#1DA57A" },
    javascriptEnabled: true,
  })(config, env);
  return config;
};

1 Ответ

0 голосов
/ 28 сентября 2018

Не важно, пришлось изменить оператор импорта в index.js на

import 'antd / dist / antd.less' вместо css.Извините, брат и сестры.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...