Да, ты можешь. В большинстве случаев люди создают плагины vue. При этом вы можете установить их как npm install myCoolPlugin
и использовать в своем приложении, импортировав его: import myCoolPlugin from 'myCoolPlugin'
, а затем, в зависимости от плагина, вы можете установить его глобально, как это делает vuex:
Vue.use(myCoolPlugin)
или вы можете явно использовать компоненты плагина по своему усмотрению, прямо там, где вы собираетесь их использовать, например:
import {coolButton, coolInput} from 'myCoolPlugin';
export default {
name: 'home-page',
components: [coolButton, coolInput],
...
}
Плагины также имеют файл package.json, который содержит метаданные о том, от чего этот плагин зависит и т. Д. (Точно так же, как ваше приложение). Когда вы npm i myCoolPlugin
, npm проверяет файл package.json плагина, чтобы узнать, от каких сторонних пакетов зависит плагин, а затем продолжает их установку в node_modules вашего приложения.
Проблема с вашим компонентом "esri-search" заключается в том, что он не настроен как пакет / плагин. Поэтому он не будет устанавливать никаких необходимых ему зависимостей (например vuex, lodash и т. д ...) в вашем приложении.
Вот почему вам пришлось установить vuex как зависимость от вашего приложения, потому что, когда вы копируете и вставляете этот компонент в свое приложение, это не плагин, он становится вашим приложением.
Имеет ли это смысл? :)
person
Sølve Tornøe
schedule
12.04.2019