1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/wmdzkey-react-weui-scaffold

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
В этом репозитории не указан файл с открытой лицензией (LICENSE). При использовании обратитесь к конкретному описанию проекта и его зависимостям в коде.
Клонировать/Скачать
README.md 6.7 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 25.11.2024 11:51 b1e7771

Основываясь на react-weui, строим реактивный каркас разработки

Недавно я просмотрел множество статей и обнаружил, что в них нет хорошего объяснения того, как создать среду React и использовать react-weui. Также не было информации о том, на что следует обратить внимание при использовании webpack для сборки и запуска. Ниже я представляю подробное руководство по созданию каркаса разработки с использованием версии react-weui 1.1.3.

1. Скачиваем исходный код с GitHub Скачиваем с GitHub: https://github.com/weui/react-weui Можно использовать git clone или скачать zip-архив.

package.json — файл, в котором описаны шаги редактирования и запуска; webpack.config.js — конфигурационный файл webpack для сборки; webpack.config.doc.js — конфигурационный файл webpack (doc) для сборки.

2. Открываем IDE и создаём проект В качестве IDE используем WebStorm, а в качестве командной строки — cmder.

WebStorm: https://www.jetbrains.com/webstorm/ cmder: http://cmder.net/

3. Инициализируем проект и добавляем npm-пакеты Здесь мы используем cnpm вместо npm.

Зеркало NPM Taobao: https://npm.taobao.org/

Вы можете использовать наш инструмент командной строки cnpm (с поддержкой сжатия gzip), чтобы заменить стандартный npm:
$ npm install -g cnpm --registry=https://registry.npm.taobao.org

Установка внутренних npm-пакетов проекта:

cnpm install

Установка связанных npm-пакетов:

cnpm install --save weui@1.1.0 react-weui
# Здесь необходимо указать версию webpack, так как использование webpack автоматически установит webpack4, что может вызвать проблемы с версией позже*
cnpm install --save webpack@3
# В настоящее время версия всё ещё 2.x, но всё равно укажите её*
cnpm install  --save webpack-dev-server@2
cnpm install --save autoprefixer
cnpm install --save html-webpack-plugin
cnpm install --save extract-text-webpack-plugin
cnmp install --save open-browser-webpack-plugin
cnpm install --save-dev babel-core babel-loader babel-preset-es2015 babel-preset-react babel-preset-stage-0

4. Компилируем и упаковываем Мы не используем предоставленный build-скрипт, а создаём свой на основе webpack.

Открываем webpack.js, добавляем в script следующий код:

"start:example": "webpack-dev-server --config webpack.config.js --inline --progress --colors --port 8080",```

Запускаем скрипт:

```cnpm run build:example```

Однако вы обнаружите ошибку: Module not found (js).
Эта проблема связана с тем, что webpack не находит модуль. При использовании webpack для упаковки возникает эта проблема. Нам нужно глобально найти ../../../build/packages и изменить его на react-weui.

Пример изменения файла:

Строка 5 изменяется следующим образом:

Файл содержит много строк, поэтому необходимо терпеливо искать и изменять их одну за другой.

Ещё одна ошибка: Module not found (css).
Откройте файл example/app.js и измените строку 15: import 'react-weui/build/packages/react-weui.css';

После изменения всех файлов запустите снова:

```cnpm run build:example```
Всё готово!

**5. Запускаем пример проекта**

```cnpm run start:example```

Завершено, откройте браузер:
[http://127.0.0.1:3000/](http://127.0.0.1:3000/)

**6. Создаём и запускаем пример проекта doc**
Поскольку в package.json есть скрипт start:doc, нам нужно только добавить:

```"build:doc": "webpack --config webpack.config.doc.js --progress --colors -p"```

Теперь запустите:

```cnpm run build:doc```
Если появится сообщение об ошибке ../../build/packages, измените его на react-weui **Текст запроса:**

eval(compiledCode).apply(null, tempScope); } /* eslint-enable no-eval, max-len */

  this.setState({ error: null });
} catch (err) {
  this._setTimeout(() => {
    this.setState({ error: err.toString() });
  }, 500);
}

};

componentDidMount = () => { this._executeCode(); };

componentDidUpdate = (prevProps) => { clearTimeout(this.timeoutID); //eslint-disable-line if (this.props.code !== prevProps.code) { this._executeCode(); } };

render() { const { error } = this.state; return (

{error !== null ?
{error}
: null}
); }

}

export default Preview;


**Перевод текста на русский язык:**

eval (compiledCode) .apply (null, tempScope); } /* eslint-enable no-eval, max-len */

this.setState ({error: null}); } catch (ошибка) { this._setTimeout (() => { this.setState ({ошибка: ошибка.toString ()}); }, 500); } };

componentDidMount = () => { this._executeCode (); };

componentDidUpdate = (prevProps) => { clearTimeout (this.timeoutID); // eslint-disable-line if (this.props.code! == prevProps.code) { this._executeCode (); } };

render () { const {error} = this.state; return (

{error! == null?
{error}
: null}
); }

}

экспорт по умолчанию Предварительный просмотр;


Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/wmdzkey-react-weui-scaffold.git
git@api.gitlife.ru:oschina-mirror/wmdzkey-react-weui-scaffold.git
oschina-mirror
wmdzkey-react-weui-scaffold
wmdzkey-react-weui-scaffold
master