如何使用vite框架封装一个js库,并发布npm包

这篇具有很好参考价值的文章主要介绍了如何使用vite框架封装一个js库,并发布npm包。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

前言介绍

一、创建一个vite项目

1、使用创建命令:

 2、选择others

3、 模板选择library

4、选择开发语言

​编辑 二、安装依赖

三、目录介绍

1、vite.config.ts打包文件

2、package.json命令配置文件

三、发布npm

1、注册npm账号

2、设置npm源

3、登录到npm

4、推送到npm仓库

5、查看npm包


前言介绍

最近,公司项目上需要把很多公用函数封装起来,作为一个公共的库使用。以前的做法是使用webpack或者Rollup。Rollup和Webpack都是常用的JavaScript模块打包工具,用于构建现代化的Web应用程序。但是,不管是webpack或者Rollup配置起来都很复杂,使用起来不是顺手。

经过一番折腾,发现vite也可以。大多数同学可能使用vite作为脚手架去构建vue、react开发应用。其实,vite也可以作为JavaScript模块打包工具,构建一个JavaScript库,并且使用起来容易上手,配置也简单,打包速度很快,并发布到npm上。

Vite是一种新型前端构建工具,能够显著提升前端开发体验。它主要由两部分组成:

  • 一个开发服务器,它基于 原生 ES 模块 提供了 丰富的内建功能,如速度快到惊人的 模块热更新(HMR)。

  • 一套构建指令,它使用 Rollup 打包你的代码,并且它是预配置的,可输出用于生产环境的高度优化过的静态资源。

Vite 是一种具有明确建议的工具,具备合理的默认设置。您可以在 功能指南 中了解 Vite 的各种可能性。通过 插件,Vite 支持与其他框架或工具的集成。如有需要,您可以通过 配置部分 自定义适应你的项目。

Vite 还提供了强大的扩展性,可通过其 插件 API 和 JavaScript API 进行扩展,并提供完整的类型支持。其他的关于vite的介绍欢迎同学上官网去学习。下面咱们直接上手。

一、创建一个vite项目

1、使用创建命令:

pnpm create vite

这里不要选择开发框架而是选择Others 。如下图所示:

vite 自己写了一个js类 怎么发布到npm,vite,javascript,vite,typescript,npm包,js库

 2、选择others

vite 自己写了一个js类 怎么发布到npm,vite,javascript,vite,typescript,npm包,js库

3、 模板选择library

vite 自己写了一个js类 怎么发布到npm,vite,javascript,vite,typescript,npm包,js库

这library的意思是软件库,正好我们开发的就是一个软件库。

4、选择开发语言

vite 自己写了一个js类 怎么发布到npm,vite,javascript,vite,typescript,npm包,js库

 开发语言这里选择Typescript.

 二、安装依赖

pnpm  install

 依赖安装完毕后,一个js库开发环境就搭建起来了。

三、目录介绍

vite 自己写了一个js类 怎么发布到npm,vite,javascript,vite,typescript,npm包,js库

1、vite.config.ts打包文件

import { defineConfig } from 'vite'

export default defineConfig({
  build: {
    lib: {
      entry: './lib/main.ts',
      name: 'Counter',
      fileName: 'counter'
    }
  }
})

2、package.json命令配置文件

{
  "name": "vite-roll",
  "private": true,
  "version": "0.0.0",
  "type": "module",
  "files": [
    "dist",
    "index.d.ts"
  ],
  "main": "./dist/counter.umd.cjs",
  "module": "./dist/counter.js",
  "types": "./index.d.ts",
  "exports": {
    "types": "./index.d.ts",
    "import": "./dist/counter.js",
    "require": "./dist/counter.umd.cjs"
  },
  "scripts": {
    "dev": "vite",
    "build": "tsc && vite build"
  },
  "devDependencies": {
    "typescript": "^5.3.3",
    "vite": "^5.0.10"
  }
}

从以上两个文件中可以看出,vite简直就是为了开发一个js库,并且发布到npm上而准备的。

三、发布npm

1、注册npm账号

想要发布到npm仓库,就必须要有一个账号,先去npm官网注册一个账号,注意记住用户名、密码和邮箱,发布的时候可能会用到。

vite 自己写了一个js类 怎么发布到npm,vite,javascript,vite,typescript,npm包,js库

2、设置npm源

在国内很多小伙伴喜欢把本地的npm镜像源采用的是淘宝镜像源或者其它的,如果想要发布npm包,我们得吧我们得npm源切换为官方得源,命令如下:

npm config set registry=https://registry.npmjs.org

3、登录到npm

在打包后的文件根目录打开终端,输入npm login登录到官网

完成如下图步骤就成功登陆了

vite 自己写了一个js类 怎么发布到npm,vite,javascript,vite,typescript,npm包,js库

4、推送到npm仓库

输入npm publish就可以正式发布到npm仓库了

vite 自己写了一个js类 怎么发布到npm,vite,javascript,vite,typescript,npm包,js库

注意:发布前要保证没有相同的包名,否则无法发布,每次发布的版本号必须不同

5、查看npm包

上传成功后可以在npm官网上通过自己设置的keywords关键字查到自己上传的组件

vite 自己写了一个js类 怎么发布到npm,vite,javascript,vite,typescript,npm包,js库

发布成功后就可以使用npm命令行下载使用了。

最后附上发布npm安装包,package.json文件完整配置:

{
  "name": "array-device",
  "version": "1.1.2",
  "description": "Handle your array objects with ease",
  "type": "module",
  "files": [
    "dist",
    "index.d.ts"
  ],
  "main": "./dist/array-device.umd.js",
  "module": "./dist/array-device.es.js",
  "types": "./index.d.ts",
  "exports": {
    "types": "./index.d.ts",
    "import": "./dist/array-device.es.js",
    "require": "./dist/array-device.umd.js"
  },
  "scripts": {
    "dev": "vite",
    "build": "vue-tsc && vite build"
  },
  "keywords": [
    "array",
    "reduce",
    "intersection",
    "select"
  ],
  "author": "patton",
  "license": "ISC",
  "repository": {
    "type": "git",
    "url": "https://github.com/renleiabc/array-device.git"
  },
  "bugs": {
    "url": "https://github.com/renleiabc/array-device/issues"
  },
  "devDependencies": {
    "@types/node": "^20.10.8",
    "@typescript-eslint/parser": "^6.18.1",
    "@vitejs/plugin-vue": "^5.0.3",
    "eslint": "^8.56.0",
    "eslint-config-airbnb-base": "^15.0.0",
    "eslint-config-prettier": "^9.1.0",
    "eslint-plugin-import": "^2.29.1",
    "eslint-plugin-prettier": "^5.1.3",
    "eslint-plugin-vue": "^9.20.0",
    "prettier": "^3.1.1",
    "typescript": "^5.3.3",
    "vite": "^5.0.10",
    "vue": "^3.4.8",
    "vue-tsc": "^1.8.27"
  }
}

接下来,开发属于你自己的js库吧文章来源地址https://www.toymoban.com/news/detail-822950.html

到了这里,关于如何使用vite框架封装一个js库,并发布npm包的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • vue3 + vite自定义封装vue + element-ui 表格组件,发布到npm包的全过程。

    当我们项目中用到的表格太多的话,就会导致我们的代码量一直增加,所以我们要封装一个公共得组件,通过传参引入来使用,下面这篇文章主要给大家介绍了关于vue3+vite自定义封装vue组件发布到npm包的相关资料,需要的朋友可以参考下。 提示我们要安装 create-vite@4.1.0 得依赖

    2024年02月02日
    浏览(50)
  • 如何自己创建一个工具项目并上传到npm上使用

    选择框架:   选择语言: 在项目中使用命令安装项目依赖:   运行项目:  运行成功界面: 注意: version:当前发布的版本号,项目每次改动后需要修改版本后再发布,  默认要0.0.1开始才能上传,相同版本是传不上去的,一定要记得每次更改了代码都改下版本号。 name: 包

    2024年02月12日
    浏览(31)
  • Vue2封装一个全局通知组件并发布到NPM

    ✍🏼作者:周棋洛,计算机学生 ♉星座:金牛座 🏠主页:点击查看更多 🌐关键: vue2 组件封装 npm发包 你好!我是王子周棋洛,好久没写文了。 今天带大家 封装 一个类似 element-ui 的全局通知组件,并发布到 npm 后安装使用自己封装的组件。go,go,go🎉 原因1:现成UI组件

    2024年02月09日
    浏览(34)
  • 前端工程化:发布一个属于自己的规范 npm 包

    初始化项目 首先在github创建一个仓库,协议选择MIT,gitignore选择Node,添加README.md描述文件。使用git clone将项目克隆到本地。cd 进入目录,使用vscode打开(终端输入code . 命令即可)。 然后创建一个合理的目录结构: 配置 typescript 统一代码风格 首先,配置eslint,使用遵循Air

    2024年02月05日
    浏览(34)
  • 如何发布自己的npm包

    首先创建一个文件夹(唯一的命名) 创建package.json包,输出npm init,一直回车就好。 创建index.js文件,向外暴露方法。 将包上传或更新到 npm   执行登录命令:npm login 登录npm官网,根据提示输入用户名和密码,邮箱(邮箱必须在注册时进行验证)  发布版本,在登陆命令后接

    2024年02月14日
    浏览(25)
  • 前端(vue)npm如何发布自己的包

    4.1然后执行:npm run lib会得到lib文件夹 4.2配置package.json 在npm官网(https://www.npmjs.com/)按照步骤注册一个账号,我这边已经注册好了直接登录就行 6.1注册成功之后然后在终端中输入命令 出现这个之后就说明登陆成功了 6.2更新命令 这就可以使用了!!!

    2024年02月12日
    浏览(33)
  • 自己开发或者修改的组件包如何发布到npm官方市场

    1、注册账号 打开npm官方网站: www.npmjs.com; 进行注册 注册需要用户名,密码和邮箱, 当注册完成后需打开邮箱进行验证(邮箱不验证无法上传) 二、  在需要打包发布的文件夹package.json所在目录下 执行命令:npm init  按照提示修改后一路回车就行; package name 就是安装命令

    2024年02月08日
    浏览(29)
  • 如何发布一个 npm 包

    npm(node package manager)作为 Node.js 的包管理工具,让世界各地的 JavaScript 开发者方便复用、分享代码以及造轮子;本文将介绍如何发布一个 npm 包,以及使用工具来自动化管理发布 npm 包;本文总览如下: 准备 npm 账号 示例包代码; 初始化 配置 package.json 文件; 确定发布的包

    2024年02月07日
    浏览(25)
  • 如何基于 Gin 封装出属于自己 Web 框架?

    在基于 Gin 封装出属于自己的 Web 框架前,你需要先了解 Gin 的基本用法和设计理念。 然后,你可以通过以下步骤来封装自己的 Web 框架: 封装路由:Gin 的路由是通过 HTTP 方法和 URL 路径进行匹配的,你可以根据自己的需求,封装出符合应用的业务需求的路由。你可以考虑将路

    2024年02月02日
    浏览(35)
  • 使用taro或react框架的,针对微信小程序隐私协议的组件封装,网上找了很久都没有相关模版,只有自己写了一个,现分享给有困难的同伴

    注意:我是使用hooks的,其他可以参考封装思路大同小异的 首先写一个PrivacyAgreement.js文件 样式文件index.scss如下 在需要用到隐私协议的组件或者api的页面里面引用

    2024年02月05日
    浏览(35)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包