首页 > 其他分享 >npm包 - 发布vue组件

npm包 - 发布vue组件

时间:2024-05-16 20:32:40浏览次数:25  
标签:npm vue install -- components 组件 cli

npm包 - 发布vue组件

 

一. 环境准备

npm install -g @vue/cli

 

 

二. 创建项目

vue create vue-page-card-drag

 

本文使用vue2

 

三. 开发组件/加入组件

可以将已经编写好的组件移动到components目录下,或者新建一个vue组件,步骤是一样的。
例如我这里新建了一个HelloWorld.vue组件,需要注意的是,组件必须有name,这将会是用户使用的组件名称

<template>
  <div class="hello">
    <h1>{{ msg }}</h1>
  </div>
</template>

<script>
export default {
  name: "HelloWorld",
  props: {
    msg: String,
  },
};
</script>

<style scoped>
.hello {
  width: 200px;
  height: 150px;
  border: 1px solid red;
}
</style>

然后修改App.vue

<template>
  <div id="app">
    <HelloWorld msg="App pp pack" />
  </div>
</template>

<script>
import HelloWorld from "./components/HelloWorld.vue";

export default {
  name: "App",
  components: {
    HelloWorld,
  },
};
</script>

<style scoped>
</style>

运行 npm run serve

 

在src文件夹下新建index.js文件

import HellowWorld from "@/components/HellowWorld.vue";

const components = [HellowWorld];

const install = (Vue, options) => {
  if (install.installed) return;
  install.installed = true;
  components.forEach((component) => {
    Vue.component(component.name, component);
  });
};
// 如果是直接引入的vue.js方式,则会挂到window下
if (typeof window !== "undefined" && window.Vue) {
  install(window.Vue);
}
export default {
  // 使用Vue.use必须具有install方法
  install,
  ...components,
};

 

 

修改配置文件

将项目根目录下的package.json文件:

 scripts修改start和build命令:
"scripts": {
    "serve": "vue-cli-service serve",
    "start": "vue-cli-service build --target lib --name vue-link-demo --dest lib src/index.js --watch",
    "build": "vue-cli-service build --target lib --name vue-link-demo --dest lib src/index.js",
    "build:app": "vue-cli-service build",
    "lint": "vue-cli-service lint"
  },

 

 

 

 

引用:https://blog.csdn.net/lingliu0824/article/details/125764527

标签:npm,vue,install,--,components,组件,cli
From: https://www.cnblogs.com/1285026182YUAN/p/18196678

相关文章

  • vue-cli项目处理vant自适应问题
    原因vant自带的样式,用的单位是px,无法自适应。一般有两种处理思路。一、写媒体查询安装插件postcss-pxtorem:用于将单位px转化为rem//安装命令npmi-Dpostcss-pxtoremlib-flexible:给html标签设置font-size,作为rem基准值(因为我的项目已经脚本处理了,所以我是没有......
  • vue复制粘贴功能
    第一种【推荐】npminstallclipboard--save<template><div><inputtype="text"v-model="copyText"/><button@click="copyToClipboard">复制到剪贴板</button></div></template><......
  • 前端面试题 - vue的双向绑定原理是什么?
    前端面试题-vue的双向绑定原理是什么?vue2的双向数据绑定是通过数据劫持结合发布者订阅者模式的方式来实现。通过object.defineProperty来劫持各个属性的setter,getter,在数据变化时发布消息给订阅者,触发相应的监听回调来渲染视图。Vue3利用Proxy代理来处理双向数据绑定。可以......
  • Community Mvvm Toolkit常用组件的基本使用(第一版)
    一、组件ObservableObjectObservableObject实现了INotifyPropertyChanged和INotifyPropertyChanging,并触发PropertyChanged和PropertyChanging事件1publicclassUser:ObservableObject2{3privatestringname;45publicstringName6{7......
  • vue路由配置
    一目的建一个vue路由 二步骤1.安装路由,顺便打开package.json方便查看版本npminstallvue-router@4 2.src下创建router目录,route目录创建index.js文件import{createRouter,createWebHistory}from"vue-router";//创建路由规则constroutes=[......
  • vue3百科全书
    @目录2.2.【基于vite创建】(推荐)2.3.【一个简单的效果】3.Vue3核心语法3.1.【OptionsAPI与CompositionAPI】3.2.【拉开序幕的setup】setup概述setup的返回值setup与OptionsAPI的关系setup语法糖3.3.【ref创建:基本类型的响应式数据】3.4.【reactive创建:对象......
  • Vue-快速启动指南-全-
    Vue快速启动指南(全)原文:zh.annas-archive.org/md5/056a1fe7509ea158cc95e0fe373880b7译者:飞龙协议:CCBY-NC-SA4.0前言直到几年前,直接DOM操作是前端开发的标准,jQuery一直引领潮流。所有这一切都随着现代JavaScript库和框架的普及而开始改变,主要是Angular和React。......
  • VueJS2-学习指南-全-
    VueJS2学习指南(全)原文:zh.annas-archive.org/md5/0B1D097C4A60D3760752681016F7F246译者:飞龙协议:CCBY-NC-SA4.0前言这本书是关于Vue.js的。我们将开始我们的旅程,试图理解Vue.js是什么,它与其他框架相比如何,以及它允许我们做什么。我们将在构建小型有趣的应用程序的同......
  • Vue3-示例-全-
    Vue3示例(全)原文:zh.annas-archive.org/md5/84EBE0BE98F4DE483EBA9EF82A25ED12译者:飞龙协议:CCBY-NC-SA4.0前言Vue是主要框架之一,拥有庞大的生态系统,并因其在开发应用时的易用性以及能够帮助你快速实现令人印象深刻的开发结果而不断增加采用率。本书探讨了最新的Vue版本......
  • Vue-与-GraphQL-应用构建指南-全-
    Vue与GraphQL应用构建指南(全)原文:zh.annas-archive.org/md5/60CC414A1AE322EC97E6A0F8A5BBE3AD译者:飞龙协议:CCBY-NC-SA4.0前言自2012年Facebook发布以来,GraphQL已经席卷了互联网。像Airbnb和Audi这样的大公司已经开始采用它,而中小型公司现在也意识到了这种基......