предисловие
Среди интерфейсных фреймворков на рынке лучшим партнером является Vue+Cesium.Как правило, компании, которые производят продукты Cesium B-side, будут использовать Vue, поэтому последующий контент будет основан на Vue.
Обычно, когда мы хотим использовать Cesium во Vue, нам сначала нужно установить Cesium, а затем нужно настроить много чего в вебпаке vue-cli, что просто хлопотно для некоторых опытных людей, но для новичков в Cesium Это будет очень больно, так как я им раньше не пользовался, и не знаю как его настроить, остается только искать в сети туториалы и шаг за шагом шагать по яме.
На самом деле, опытный вы или новичок, очень хлопотно повторно настраивать эти вещи каждый раз, когда вы пишете проект.
vue-cli-plugin-cesium
просто решить эту проблему
представлять
vue-cli-plugin-cesium
Это плагин расширения VueCLI для Cesium, использование которого позволит нам использовать Cesium с нулевой конфигурацией в VueCLI на основе VueCLI3.0+.
На самом деле, когда я начал работать над Cesium, я чувствовал, что каждый раз настраивать его слишком хлопотно, поэтому я написал плагин, чтобы сэкономить время разработки без настройки, а позже разослал его нескольким группам разработчиков Cesium, чтобы все могли испытать , и эффект был не плохой.
Он будет расширен на основе Cesium в созданном нами проекте VueCLI.До сих пор его функции также можно сказать, что задачи, которые он решает, следующие
-
Автоматически установить Cesium и добавить к
package.json
Зависимости (дополнительная версия) -
Автоматически расширять конфигурацию веб-пакета, связанную с цезием, в VueCLI.
- добавить один
cesium
Псевдонимы, чтобы мы могли легко вводить файловые ресурсы Cesium в проект - Сделать экземпляры объекта Cesium доступными в каждом модуле Vue без импорта
- Заставить webpack работать с Cesium
- Разрешить WebPack использовать Require в Cesium, устранить предупреждение о введении Require.
- Окружающая среда разработки генерирует SourceMap, а производственная среда отменяет SourceMap
- Рабочая среда извлекает общие модули для выполнения сжатия.
- Загрузчик производства переходит в оптимизированный режим
- добавить один
-
Автоматически импортируется в глобальный main.js
Widgets.css
, необязательный -
автоматически в
components/
Сгенерируйте образцы файлов в папке, необязательно
Установить
vue-cli-plugin-cesium
Это плагин расширения, основанный на VueCLI, поэтому перед его использованием создайте проект Vue с VueCLI.
Если вы не знаете, как использовать VueCLI, переместитеVueCLI-Официальный сайт
Текущий плагин поддерживает толькоVueCLI3.0+
версия
После создания проекта Vue вы можете использовать плагин в соответствии со следующими шагами. Как и все плагины VueCLI, его можно использовать двумя способами. Рекомендуемый способ — один.
способ использования
Рекомендуемое использованиеvue add
Этот способ установки в один шаг прост и удобен
vue add vue-cli-plugin-cesium
// 非全局安装的vue-cli可以
npx vue add vue-cli-plugin-cesium
Используйте метод два
Установить первымvue-cli-plugin-cesium
Плагины, рекомендуется устанавливать с пряжей, потому что это более лаконично
// npm
npm install --save-dev vue-cli-plugin-cesium
// yarn
yarn add vue-cli-plugin-cesium
После завершения установки мы будем использоватьvue invoke
для инициализации плагина
vue invoke vue-cli-plugin-cesium
// 非全局安装的vue-cli可以
npx vue invoke vue-cli-plugin-cesium
Процесс установки
существуетvue invoke
илиvue add
В процессе будет три вопроса
спроси один
Please choose a version of 'cesium' from this list
请在列表中选择 cesium 的版本
Выберите тот, который вы хотите использовать здесьCesium
Версия
Запрос два
Whether to import styles globally.
This operation will automatically import widgets.css in main.js
是否全局引入样式,该操作将自动在main.js引入widgets.css?
Эта опция по умолчанию да, эта операция автоматически импортирует widgets.css в main.js, то есть стиль css Cesium вводится глобально
Если этот пункт установлен в нет, то мы должны вручную ввести его во время разработкиwidgets.css
Файл стиля, команда импорта выглядит следующим образом
import "cesium/Widgets/widgets.css"
Спроси три
Whether to add sample components to the project components directory
是否添加示例组件到项目components目录?
По умолчанию для этого параметра установлено значение «да», что автоматическиsrc/components
создается в папкеCesiumExample
Папка, эта папка содержит несколько примеров использования цезия для справки.
Если для этого параметра установлено значение «нет», файлы образцов создаваться не будут.
Каждый файл в сгенерированном примере представляет собой модуль, который можно напрямую импортировать в проект для просмотра.
Установка графического интерфейса
если мы используемvue ui
Создайте проект или вы можете выполнить поиск непосредственно в параметрах плагина после создания проекта.vue-cli-plugin-cesium
и установить
Следующим образом:
Выберите плагин и нажмите «Установить».
использовать
При разработке использовать объект Cesium непосредственно в модуле следующим образом
Просмотрите пример компонента, модуль можно импортировать следующим образом.
Общая проблема
При успешной установке плагина и начале разработки при использовании объектов Cesium может возникнуть следующая ошибка
Error:Cesium is no-undef
Друзья, работающие с фронтендом, должны знать, что это похоже на синтаксическую ошибку Eslint, да, это потому, что внутри плагина используется встроенный модуль Webpack.ProvidePlugin
сделать ненужным использование цезиевых объектовimport
илиrequire
Введено, и обычно, когда мы используем VueCLI для создания проекта, мы используем Eslint по умолчанию.Проверка грамматики Eslint будет думать, что Cesium является необъявленной переменной, поэтому выдается ошибка
Решение первое
package.json
Настройте правила Eslint в разрешенииno-undef
, как показано ниже, вpackage.json
серединаeslintConfig
под полемrules
настроить"no-undef": 0
, настройте так, чтобы необъявленные переменные разрешались отдельно, не выключая Eslint
{
"dependencies": {},
"devDependencies": {},
"eslintConfig": {
"root": true,
"env": {
"node": true
},
"extends": [
"plugin:vue/essential",
"eslint:recommended"
],
"parserOptions": {
"parser": "babel-eslint"
},
"rules": {
"no-undef": 0
}
}
}
Решение второе
Мы можем сделать это с помощьюpackage.json
удалить напрямуюeslintConfig
возражать против прямого выключения Eslint
Также вvue.config.js
Отключаем Eslint в настройках следующим образом
module.exports = {
lintOnSave: false
}
После модификации вы можете перезапустить сервис.Рекомендуется использовать первый способ.Проверка грамматики Eslint – отличный инструмент для разработки ограничений, который может сделать грамматический стиль одной и той же команды унифицированным.Лучше не отключать его.
конец
После завершения установки вы можете использовать Cesium в любом модуле проекта vue. Вы можете напрямую использовать экземпляр объекта Cesium в каждом модуле Vue, не импортируя его. Если вы хотите импортировать файлы в пакете cesium, мы будем использовать Пакет Cesium для пакета Cesium Каталог задается псевдонимом, который называетсяcesium
, поэтому при введенииWidgets.css
Когда путь импортаcesium/Widgets/widgets.css
, если это поможет вам, я буду рад
В настоящее время должно быть очень мало людей, использующих VueCLI2.0, конечно, если вы используете скаффолдинг> VueCLI3.0
, то вы не сможете использовать этот плагин, но не волнуйтесь, конфигурация VueCLI2.0 тоже доступна, но вам нужно настроить ее вручную, вы можете посмотреть подробности 👉VueCLI2.0 интегрирует Цезий
Мы будем постепенно улучшать этот плагин на более позднем этапе и продолжать итерации Мы приветствуем всех, кто вносит предложения и приветствует PR.
Адрес плагина 👉isboyjc/vue-cli-plugin-cesium
Статья размещена на GitHub, больше интересного смотрите 👉isboyjc/blog/issues
Это интерфейс, а не только интерфейс, так что это не серьезно, серьезно делитесь галантерейными товарами, общедоступный номер «Нерегулярный интерфейс», добро пожаловать на внимание