Генератор Yeoman для Riot 3 с использованием gulp, rollup и других полезных вещей
Это находится в стадии бета-тестирования, мы создаем его по мере продвижения. Оставьте свои замечания здесь, если что-то сломалось. Спасибо!
Сначала установите Yeoman и generator-rtjs
с помощью npm (мы предполагаем, что у вас уже установлен Node.js).
npm install -g yo
npm install -g generator-rtjs
Затем создайте ваш новый проект:
mkdir имя-вашего-проекта && cd имя-вашего-проекта && yo rtjs имя-вашего-проекта
Еще раз отметим, что есть поддержка английского и китайского языков```bash yo rtjs имя-нового-проекта --lang=ru
# Ознакомьтесь с Yeoman
* У Ямана большое сердце.
* Яман — человек с чувствами и мнением, но он очень легко работает.
* Иногда Яман слишком мнителен, но его легко переубедить.
* Чувствуйте себя свободным [узнать больше о Ямане](http://yeoman.io/).
# ВАЖНАЯ ИНФОРМАЦИЯ ДО ИСПОЛЬЗОВАНИЯ ЭТОГО ГЕНЕРАТОРА
Вот несколько вещей, которые вам нужно знать (сделать) перед тем, как использовать этот генератор для ваших следующих проектов Riot (v.3):
## Gulp (V4)
Это ещё не официальный выпуск. Поэтому вам нужно будет изменить некоторые свои настройки перед использованием.
Если у вас уже установлен глобально старый Gulp (до версии 4), то вам нужно будет сначала его удалить:
```bash
$ npm remove gulp -g
Не волнуйтесь, вы установите новую gulp-cli
. Она работает с более старыми проектами:
$ npm install gulp-cli -g
Пожалуйста, обратитесь к этому материалу с сайта liquidlight.co.uk для получения более подробной информации.
На данный момент мы предлагаем вам 3+1 варианта выбора:
Как вы можете видеть, два из них находятся в альфа-стадии, используйте их с осторожностью. Мы также предлагаем вам возможность не использовать CSS-фреймворк, чтобы вы могли создать свой вариант позднее.## Rollup
Я никогда не скрывал своего недовольства Webpack и Browserify :p и ни один из них я не использую. Rollup.js является сердцем процесса сборки. Узнайте больше о нём, начните любить его. Интерфейс НЕ ДОЛЖЕН быть сложным!
Мы всё ещё используем Bower, да. Почему?
Важные вещи должны повторяться трижды:
Использование npm для управления браузерными зависимостями — это шутка!
Это инструмент для людей, которые занимаются этим делом на профессиональном уровне (платят за аренду жилья?), а не для тех глупцов, которые задают вопросы типа "X против Y...", "Что лучше..."
Npm родился в мире NodeJS и предназначен для серверных приложений на JavaScript (Да, NodeJS НЕ фронтенд, он не работает в браузере!!!), и где-то по пути некоторые идиоты появились и начали делать работу на фронте, даже не понимая, как работают браузерные приложения на JavaScript (в этом мире существует несколько версий JavaScript, знаете ли вы об этом?), и они начинают говорить о слиянии фронта и бэкэнда — Netscape попробовал это сделать более чем двадцать лет назад, и они исчезли.Я не говорю, что это невозможно, но мир программирования огромен, как галактика, и различные направления требуют различных подходов. Чем больше вы пытаетесь использовать ОДИН способ для всего, тем меньше вы достигнете.
Рассмотрим пример использования Bower для внедрения библиотеки-поставщика (во время разработки): если кто-то использовал мои другие генераторы ранее, вы должны были заметить следующее:
npm install xyz --save
.bower.json
, а затем заново выполняет скрипт Gulp.xyz
в других ваших скриптах, где она вам нужна.Как это сделать с помощью npm? Допустим, вы используете Webpack.
npm install xyz --save
.import xyz from 'xyz'
.Хорошо, они выглядят похожими и достаточно простыми, верно?
А что насчёт распределения? Создайте отдельные файлы для продавца, ага, а что если ваша среда развёртывания современная и прогрессивная, использующая HTTP/2? С моей другой конфигурацией, всё просто — ничего не делать, и это будет работать, или использовать файл bower.json
для получения продавца и объединения его вместе, и вы получите свой vendor.js
.Вы в дерьме, если вы используете npm и Webpack — делаете это в стиле 90-х годов и читаете каждый файл package.json, чтобы найти пути и записывать их вручную в ваш html файл. Или взгляните на этот вопрос с StackOverflow. Это заставляет меня смеяться.
Я заключаю своё мнение.
Мы переходим к тестовому фреймворку Jest сейчас. И поскольку он ещё не официально поддерживается Jest, может возникнуть несколько проблем, мы исследуем его возможности (на самом деле этот генератор также протестирован с помощью Jest). Поэтому учимся вместе с нами? Оставьте свои комментарии, советы или любые проблемы, с которыми вы столкнулись здесь на GitHub. Буду признателен.
Сейчас их три:
yo rtjs:mixin имя-ващего-mixin
или
yo rtjs:tag имя-ващего-tag
Вы можете передать опцию c
(или компонент
)
yo rtjs:tag имя-ващего-tag --c=home
Это создаст ваш компонент внутри существующей папки home tag. Наберите yo rtjs:tag --help
для помощи (также для mixin
).Подгенератор сервис имеет немного другую конфигурацию. Он проверяет, установлен ли у вас определенный пакет (из Bower).
И спрашивает, хотите ли вы импортировать их в ваш класс сервиса. @TODO он также проверяет вашу текущую папку сервисов
и создает список для вас, чтобы расширить ваш новый сервис.Для более подробной информации проверьте страницу вики здесь (еще раз, это было для последней версии. Мы обновим ее как можно скорее)## Лицензия
MIT © joelchu
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )