本文将帮助:将自己写的Vue组件打包到npm进行代码托管,以及正常发布之后如何使用自己的组件. 本文讲述的仅仅是最基础的实现,其他复杂的操作需要非常熟悉webpack的相关知识,作者将继续学习. 先附上大佬的文献:https://blog.csdn.net/qq_40513881/article/details/82494958 按照大佬文中写的一步步操作,够细心的话基本可以一步到位.下面总结一下发布步骤: 1. 利用Vue的脚手架新建一个简易版的Vue项目my-project: vue ini…
制作了一套自己的组件库,并发布到npm上,项目代码见 GitHub . 前期准备 有一个npm账号 安装了vue-cli 搭建项目 vue init webpack hg-vcomponents cd hg-vcomponents cnpm install 目录结构 - vue-flag-list + build + dist // 存放发布到npm的代码 - src - components // 存放组件源代码 和 README.md - arrows arrows.vue README.m…
基于vue cli创建一个vue项目 首先安装最新的vue cli脚手架, npm install --global @vue/cli npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.2.13 (node_modules\@vue\cli\node_modules\fsevents): npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for…
在项目中有些组件在各个项目中都会调用,那么将组件发布到npm ,用到的项目去下载,这样会省去一些不必要的麻烦. 将组件发布到npm 中的步骤 做个记录 1.项目的创建,我这里使用 vue init webpack-simple 项目名 2修改文件目录 , 创建 components 文件夹 创建 main.vue  在根目录创建 index,js 3.修改文件内容 和配置 main.vue是一个组件  就按照组件的格式去写 index.js  的内容 注意引用的组件中一定要写name 属性 在组…
Uncaught TypeError: Cannot read property 'toLowerCase' of undefined 原因是 没有导出 export default { name:"Test" } index.js 文件 import Test from './src/main.vue' Test.install = function (Vue) { Vue.component(Test.name, Test } export default Test…
自己写的组件 有的也挺好的,为了方便以后用自己再用或者给别人用,把组件打包发布到npm是最好不过了,本次打包支持 支持正常的组件调用方式,也支持Vue.use, 也可以直接引用打包好的js文件, 配合vue.js 就不需要webpakc这种构建工具了,可以直接在页面内使用,下面以 ‘yyl-npm-practice’ 这个包为例 第一步:使用 vue init webpack-simple yyl-npm-practice   初始化项目 提示: 不要用 vue init webpack npm…
Vue 开发插件 开发之前先看看官网的 开发规范 我们开发的之后期望的结果是支持 import.require 或者直接使用 script 标签的形式引入,就像这样: // 这里注意一下包的名字前缀是 custom ,组件的名字前缀是 moor // 这是因为那个名字发布包的时候被占用了(我做实验的时候叫 moor-ui)现在改成了custom-ui,但是组件的前缀懒得改 import CustomUI from 'custom-ui'; // 或者 const CustomUI = requi…
原文链接:https://www.jianshu.com/p/091a68ea1ca7 写在前面 在做react-native开发的时候,我们经常会找到一些第三方组件,并且通过npm install的方式很方便的安装使用.在使用的同时,你是否想过,我们自己应该如何开发并发布一个组件呢?不管是给自己的多个项目共用,或者开源给到别人用,这都是一件很酷的事情. 那么今天,我就以我自己开发的一个在ios和android通用的CardView组件为例来讲一下,如何开发一个自己的组件,并开源到github.…
首先npm文档摆在这里: https://www.npmjs.cn/ 参考组件 https://github.com/rakuten-rex/rex-dropdownhttps://www.npmjs.com/package/react-slot “造轮子”是非常有效的学习方法.在熟练掌握API的搬运方法之后,我们可以通过自己“造轮子”来进一步掌握和理解更底层的知识.自己完成一个组件的开发之后,我们可以打包上传到 NPM 来分享自己的成果.在后面的步骤中,将会实现以下几个小目标: 配置开发环境…
创建自己的library类库包并使用webpack4.x打包发布到npm 我们在开发过程中,可能经常要使用第三方类库,比如jquery.lodash等.我们通过npm,下载安装完之后,就可以使用了,简单方便.我们自己可以创建一个类库,然后供其他人这样安装使用吗?当然是可以的. 下面我们就来说说. 1. 创建自己的类库 index.js import numRef from './ref.json' // 此文件请查看源码 const numberWord = () => { const numT…
自定义Vue组件的三步骤 1.创建组件 2.注册组件 3.使用组件 创建组件 //创建组件 var myclock = { data(){ return { clock: new Date().toLocaleString(), _timer:null } }, methods:{ updateTime(){ this.clock = new Data().toLocaleString(); } }, created(){ this._timer = setInterval(this.updat…
亲测好用,如出错,请留言 1.项目初始化 使用vue脚手架创建,但vuecli太重,我们使用简单的工程脚手架进行处理,输入命令 vue init webpack-simple my-project npm  install npm run dev 初始化以后看一下目录: 2. src中写入vue组件  结构类似于这样 考虑其他ui组件的使用,比如vant, import vant from ‘vant’ Vue.use(vant) 等 index.js中代码可以这样写: import decre…
前端埋点对于那些营销活动的项目是必须的,它可以反应出用户的喜好与习惯,从而让项目的运营者们能够调整策略优化流程提高用户体验从而获取更多的$.这篇文章将实现一个Vue3版本的埋点上报插件,主要功能有 通过Vue自定义指令形式实现点击事件上报 提供手动调用上报方法 上报每个页面访问人数与次数(UV,PV) 上报用户在每个页面停留时长 项目环境搭建 本项目采用pnpm进行Monorepo环境搭建,因为未来这个项目可能会加入更多的工具包. 安装pnpm npm install pnpm -g 初始化pa…
本文章通过实现一个vue-dialog的弹出层组件,然后附加说明如果发布此包到npm,且能被其他项目使用. 功能说明 多层弹出时,只有一个背景层. 弹出层嵌入内部组件. 弹出层按钮支持回调 源码下载 实现 多层弹出时,只有一个背景层利用两个组件实现,一个背景层组件(只提供一个背景层,组件名:background.vue),一个弹出层内容管理组件(实现多个内容层的管理,组件名:master.vue). 弹出层嵌入内部组件使用vue的component组件实现,他可以完美支持. 弹出层按钮支持回调在…
第一步:初始化我们的配置 $ mkdir react-hello-world $ cd react-hello-world/ $ npm init -y 修改我们的package.json文件 //package.json { "name": "react-hello-world", "version": "1.0.0", "description": "", "main&qu…
1-10是开发流程,后面的是发布流程 1. 在Git里面…新建项目   2. 克隆项目到本地用来开发 git clone https://github.com/***/vue-prevent-browser-back.git 3. 运行命令行,初始化项目,生成package.json     npm init –y 4. npm install 安装包 5. 在安装vue-cli的情况下执行 vue-init webpack-simple创建项目结构 6. 删除多余文件 index.html清空…
相信有很多同学在学习vue的刚开始都遇到过项目打包发布后发现CSS中的背景图片不显示,具体如何解决只需要更改bind的配置即可 修改 build/utils.js 中的 generateLoaders 方法,如下代码,增加 publicPath: '…/…/' // generate loader string to be used with extract text plugin function generateLoaders (loader, loaderOptions) { const…
本文主要讲述基于webpack编写js包文件后上传到npm,并通过cdn进行访问. 创建项目 在自己新建的文件夹下执行如下代码: npm init name: (mtmap) version: (1.0.0) description: xxxxx entry point: (/dist/gaia.demo.map.js) test command: git repository: keywords: author: allanhao license: (ISC) MIT About to wri…
vue项目打包部署到服务器,静态资源文件404 js文件404问题        原因:打包的项目静态资源的路径需要设置为绝对路径.如果是相对路径会出错 解决办法:修改config/index.js文件,将 assetsPublicPath修改为'./'                     element-icons.woff 文件 404 1.从下图可以看到,使用url-loader处理后的文件是在static目录下生成fonts目录下的文件.全部样式文件打包在css目录下app.****…
一.npm publish发布包到npm库的命令是npm publish npm publish发布包,需要先配置webpack.json文件,如果没有webpack.json文件,可以通过npm init命令初始化一个 package.json的部分字段简介如下 name:发布的包名,默认是上级文件夹名.不得与现在npm中的包名重复.包名不能有大写字母/空格/下滑线! version:你这个包的版本,默认是1.0.0.对于npm包的版本号有着一系列的规则,模块的版本号采用X.Y.Z的格式,具体…
项目初始化使用 webpack-simple 方式比较方便和容易配置,原来的方式各种坑慎入 vue init webpack-simple vue-card-slide cd vue-card-slide npm run dev 项目结构如下所示 更改webpack.config.js配置 entry: './src/lib/index.js', output: { path: path.resolve(__dirname, './dist'), publicPath: '', filename…
前言 之前在这篇文章 基于.NetCore开发博客项目 StarBlog - (8) 分类层级结构展示 中说到,我为了让文章分类列表支持层级结构,用了一个树形组件,不过这个组件太老了,使用的Bootstrap版本居然是3.x的,但又找不到更好的,只能硬着头皮用. 但实际效果有很多我不满意的,感谢开源,我直接fork一份代码来魔改,实现了我要的效果~ 然后还上传了npm~(第一次在npm上发包) 有需要的同学可以install试试: npm i bootstrap5-treeview 效果 先放图…
#user nobody; worker_processes 1; #error_log logs/error.log; #error_log logs/error.log notice; #error_log logs/error.log info; #pid logs/nginx.pid; events { worker_connections 1024; } http { include mime.types; default_type application/octet-stream;…
<template> <div> <ul :total="total" :pageSize="pageSize" :pageNum="pageNum"> <li @click="leftRight(1)"> <上一页 </li> <li @click="pageClick(item)" :style="{color:item=…
Vue 开发插件 我们可以先查看Vue的插件的开发规范 我们开发的之后期望的结果是支持 import.require 或者直接使用 script 标签的形式引入,就像这样: ps: 这里注意一下包的名字前缀是 unisoft ,组件的名字前缀是 uni import UniSoftUI from 'unisoft-ui'; // 或者 const CustomUI = require('unisoft-ui'); // 或者 <script src="..."></s…
vue封装插件并发布到npm上 项目初始化 首先,要创建项目,封装vue的插件用webpack-simple很合适,vue init webpack-simple 项目名称此命令创建我们的项目的目录,创建文件夹和文件,最后结构是这样的  然后根据需求,实现具体功能,这里我封装了一个轮播图组件mini-sliders,主要功能写在lib/slider.vue组件中 功能写好后,我们要写index.js来封装组件 import VueComment from './VueComment.vue' c…
组件化是前端开发非常重要的一部分,从业务中解耦出来,可以提高项目的代码复用率.更重要的是我们还可以打包发布,俗话说集体的力量是伟大的,正因为有许许多多的开源贡献者,才有了现在的世界. 不想造轮子的工程师,当不了合格的搬运工 .让我们来了解一下vue组件从开发到打包发布流程,并配置Github主页. 本文以 vue-clock2 组件为例,欢迎star^_^~~ 项目地址 目标框架:vue 打包工具:webpack 发布源:npm 代码托管:github 项目结构 |-- node_modules…
自己编写并发布一个Vue组件 1. 几种开源协议的介绍 https://blog.csdn.net/techbirds_bao/article/details/8785413 2.开始编写组件 新建plugin文件夹: 指定 组件.入口文件和package.json文件, 看一下各个文件内容: 1.package.json 是npm init生成的: 2.loading.vue 是编写的组件文件: 在loading.js中, 使用了 3.loading.js 是指定的入口文件: import L…
一.创建angular项目 ng new myFirstDemo //angular-cli新建项目ng g m testm //新建模块ng g c testm/headertest //新建组件 提示:组件必须到处去 @NgModule({ imports: [ CommonModule ], declarations: [HeadertestComponent], exports: [HeadertestComponent] //新添加的部分 }) 二.安装ng-packagr npm i…
自己写的vue组件怎么才能让其他人引用呢,或者是共用组件如何让其他项目引用.本文就粗细的介绍下,如有疑问欢迎共同讨论.在这里你能了解下如下知识点: 1. 如何发布一个包到npmjs仓库上 2.如何引用一个npm包,尤其是本地引用 3.vue组件的两种引用方案 一.发布一个包到npm的步骤 在npmjs.org上注册一个账号 然后进入命令提示窗口输入: npm adduser: 进入添加用户 Username your name: 设置用户名 Password your password: 设置密…