Используйте Create-React-App с antd

Я пробовал использовать antd с создать приложение для реагирования.

Я установил antd в проект, используя

yarn add antd

Добавлена ​​кнопка с использованием компонента кнопки antd

import React, { Component } from 'react';
import Button from 'antd/lib/button';
import './App.css';

class App extends Component {
  render() {
    return (
      <div className = "App">
        <Button type = "primary">Button</Button>
      </div>
    );
  }
}

export default App;

Тем не менее, кнопка не отображалась правильно. При осмотре элемента я обнаружил, что применяются классы antd. Просто css не загружается.

Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
3
0
1 678
3
Перейти к ответу Данный вопрос помечен как решенный

Ответы 3

Ответ принят как подходящий

Мне пришлось добавить antd / dist / antd.css в начало src / App.css.

@import '~antd/dist/antd.css';

.App {
  text-align: center;
}

Я понял это из Официальная документация antd для использования с приложением Create React

Итак, все необходимые шаги - установить antd

yarn add antd

Используйте компонент от antd

import React, { Component } from 'react';
import Button from 'antd/lib/button';
import './App.css';

class App extends Component {
  render() {
    return (
      <div className = "App">
        <Button type = "primary">Button</Button>
      </div>
    );
  }
}

export default App;

И импортируйте antdcss в основной файл css (src / App.css)

Хотя проверенный ответ работает, вы можете минимизировать размер пакета CSS в сборке путем импорта только необходимого CSS следующим образом.

import Button from 'antd/lib/button';
import 'antd/lib/button/style/css'; // importing only the required CSS

Обновлять

Недавно заметил, что даже при импорте компонентов antd в соответствии с вышеупомянутым способом (зачеркнутый текст) он по-прежнему добавляет ненужные JS в сборку,

Я даже попробовал response-app-rewired в документация по дизайну муравьев, проблема все та же (по-прежнему добавляет ненужный JS в сборку). Итак, я открыл проблему с репозиторием antd: https://github.com/ant-design/ant-design/issues/13274

Обновление 2:

Взгляните на: https://github.com/ant-design/ant-design/issues/12011

Это по-прежнему будет импортировать много ненужных стилей, поскольку 'antd/lib/button/style/css' импортирует базовый CSS.

Kevin He 13.10.2018 10:20

@KevinHe У вас есть лучшее решение? Если да, продолжайте редактировать ответ.

user158 13.10.2018 17:16

После установки antd в свой проект вы можете импортировать кнопку как

импортировать {Button} из 'antd';

Другие вопросы по теме