минап
Новый взгляд на разработку мини-программ WeChat
Журнал изменений
Выпущено minapp 2.0.0. В новой версии в основном используется веб-пакет 4. Пожалуйста, проверьте обновление с v1.x до v2.x.
представлять
minapp — это набор инструментов, созданных для разработки мини-программ WeChat для улучшения опыта разработки:
- Предоставляет инструмент командной строки
@minapp/cli
, который можно использовать для быстрого создания проекта и использования веб-пакета для сборки сгенерированного проекта; - Предоставьте среду разработки
@minapp/core
. Эта среда полностью совместима с собственным кодом апплета. Она поддерживает разработку с использованием классов, поддерживает автоматическое завершение кода, а также обеспечивает автоматическое завершение всех API WeChat. - Предоставляет фреймворк
@minapp/mobx
, который интегрирует mobx. Этот фреймворк в основном внедряет mobx в @minapp/core
, что позволяет легко использовать mobx для управления глобальными данными. - Предоставьте плагин vscode
minapp-vscode
. Этот плагин в основном представляет собой язык шаблонов wxml
для небольших программ. Он может автоматически заполнять все компоненты, атрибуты компонентов, значения атрибутов компонентов и т. д.
Примечание. После использования minapp вам все равно необходимо использовать «Инструменты разработчика WeChat», официально предоставляемые WeChat для тестирования.
использовать
- Используйте npm для установки инструментов командной строки:
npm install -g @minapp/cli
- Инициализируйте проект:
minapp init <你要创建项目的文件夹>
(поддерживает одновременное создание проектов js и ts) - Установите два плагина vscode: minapp и dot-template (необязательно, но рекомендуется).
Функции
- Полностью совместим с собственными мини-программами, все собственные мини-программные коды можно напрямую перенести в среду minapp.
- Интегрируйте webpack и webpack-dev-server для обеспечения компиляции.
- Вы можете использовать mobx для облегчения глобального управления данными.
- Все языки могут быть автоматически завершены в среде minapp, а опыт разработки просто великолепен (см.
功能概览
ниже). - Поддержка двусторонней привязки данных
- Оптимизация производительности setData
Обзор функций (в редакторе vscode)
Все интерфейсы wx имеют интеллектуальные напоминания, включая параметры интерфейса и возвращаемые значения.
Пользователи, не использующие Minapp, также могут установить @minapp/wx
, чтобы получить эту функцию, см. здесь.
Предоставляет обещанную версию интерфейса wx wxp, которая аналогична wx, за исключением того, что она обещает все функции в wx, требующие три параметра успеха/неуспеха/завершения.
- wxp также поддерживает использование обратных вызовов успеха.
- wxp добавляет метод Final к Promise, например, вы можете использовать
wxp.getUserInfo().finally(() => { /* do something */ })
Интеграция mobx делает очень удобным изменение глобальных данных и автоматическое обновление текущего статуса страницы.
- Чтобы внедрить Store, вам нужно всего лишь добавить объект Store в функцию appify.
- Объекты Store по умолчанию внедряются в Page и Component. Вы можете использовать
this.store
для их получения.
Язык шаблонов wxml поддерживает подсветку синтаксиса, интеллектуальные подсказки компонентов и интеллектуальные подсказки атрибутов компонентов (необходимо установить minapp подключаемого модуля vscode).
Для получения более подробной информации о функциях этого плагина нажмите здесь, чтобы просмотреть
json-файл поддерживает автоматические подсказки
При создании новой папки страницы автоматически генерируются связанные файлы (необходимо установить точечный шаблон подключаемого модуля vscode).
- Автоматически создавайте для вас соответствующие файлы с тем же именем, включая js/json/wxml/scss, и вы можете в любое время изменить эти файлы шаблонов в папке .dtpl.
- Автоматически вставлять вновь созданный путь к странице в папку app.json.
Страница мини-программы поддерживает автоматические подсказки функций.
Таким же образом, при создании новой папки компонента одновременно будут созданы и связанные файлы, функция жизненного цикла в компоненте также автоматически предложит;
Об этом описании склада
Это не один проект, это комбинация нескольких проектов, использующих инструмент разработки lerna. Другие проекты находятся в каталоге пакетов. Вот краткий обзор нескольких основных проектов.
- minapp-generator: этот модуль отвечает за анализ официальных документов WeChat и создание структурированных данных для использования другими модулями.
- minapp-wx: определения TypeScript для всех собственных API WeChat, а также предоставляет обещанную версию интерфейса wx.
- minapp-core: среда разработки, должна зависеть от minapp-wx
- minapp-mobx: среда разработки, которая интегрирует mobx и должна полагаться на minapp-core.
- minapp-cli: инструмент командной строки, предоставляемый пользователям и позволяющий быстро создать новый проект.
- minapp-vscode: плагин vscode, обеспечивающий подсветку синтаксиса, автоматическое заполнение тегов и атрибутов для wxml.
TODO