附录2-上传自己的包

news2025/1/20 3:50:34

目录

1  Node中包的规范

2  创建包

2.1  package.json

2.2  内容部分

2.2.1  格式化时间 handle_date.js

2.2.2  转义/还原 HTML handle_html.js

2.2.3  index.js

2.2.4  测试功能

2.3  说明文档

3  发布包

3.1  注册账号

3.2  登录账号

3.3  上传

4  删除包

4.1  网站上删除

4.2  命令删除


1  Node中包的规范

  • 必须以单独的目录存在
  • 包的顶级目录下必须包含package.json这个文件
  • package.json必须包含name(包的名字),version(版本号),main(入口文件,require加载的时候一定需要一个JS文件,我们都是写字符串,这个字符串就是包的名字,之后require去包中找到package.json,然后找到main)

下面这个就是moment的入口文件,是package.json同级路径下的 moment.js

2  创建包

创建一个文件夹,文件夹名为你给包起的名字

我们简单搞一搞,在文件夹中创建 包管理配置文件package.json 包入口文件 index.js 包的说明文档 README.md

2.1  package.json

创建后写上如下内容(用新建文本文档内容创建方式就行)

  • name 包的名字
  • version 包的版本
  • main 包的入口函数
  • description 包的描述,在搜索的时候会有让别人看到

  • keywords 关键字,搜索什么东西可以出现你这个包,比如moment的关键字就是下面这些

  • license 开源许可,我们直接使用ISC就可以了

2.2  内容部分

视频里做的包有 格式化时间 和 转义,还原HTML的功能,我这里跟着抄一下

我们不应该把所有的代码都放在index.js中,这样维护起来比较麻烦,我们应该让一个功能占据一个js文件,然后在index.js中引用它们

2.2.1  格式化时间 handle_date.js

2.2.2  转义/还原 HTML handle_html.js

2.2.3  index.js

你可以这样写

也可以这样写,下面这样写在方法多的时候比较方便,三个点相当于把导入的所有东西都算上

2.2.4  测试功能

每搞完一个版本建议简单测一下,写一个test.js

由于我在 package.json 中定义了入口文件了,所以这里直接任务文件夹就好了

发现没有什么问题

2.3  说明文档

一般来讲要有下面这些内容

  • 安装方式
  • 导入方式
  • 每一个功能的使用方法
  • 开源协议

内容大致是这个样子的

3  发布包

3.1  注册账号

首先你要注册一个npm账号,需要到npm的官网 npm 点击 sign up

然后就正常注册就行了

3.2  登录账号

首先你要切回npm的源,然后在终端中输入 npm login,之后依次输入 用户名,密码,邮箱,邮箱验证码(回给你重新发一次,不是用注册的)

3.3  上传

切换到你自建包的根目录中,然后输入npm publish

上传之后你就能搜索到你的包

包中会有你写的内容

4  删除包

4.1  网站上删除

当你不想在网站上共享这个包的时候,点击settings

找到下面有一个Delete package,点击后就可以删除了

4.2  命令删除

npm unpublish只能删除72小时内上传的包,删除后在24小时内不可以再上传同名包

这样你刚刚上传的包就被删除了

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/106057.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

能源管理系统与能源管理平台|瑜岿科技

构建“以新能源为主体的新型电力系统”。众所周知,随着新能源大规模接入,电力系统将呈现显著的“双侧随机性”和“双峰双高”的“三双”特征,为保证电力系统安全稳定高效运行,必须加速推进源网荷储一体化和多能互补发展&#xff0…

790. 多米诺和托米诺平铺(难度:中等)

题目链接:https://leetcode.cn/problems/domino-and-tromino-tiling/ 题目描述: 有两种形状的瓷砖:一种是 2 x 1 的多米诺形,另一种是形如 “L” 的托米诺形。两种形状都可以旋转。 给定整数 n ,返回可以平铺 2 x n 的…

使用 Webpack 从 0 到 1 构建 Vue3 项目

目录 1. 初始化项目结构 2. 安装 webpack,补充智能提示 3. 初步编写 webpack.config.js 4. 配置 运行 / 打包 命令,首次打包项目 5. 添加 Vue 及相关配置 6. 增加 删除上次打包文件 的配置 7. 在 webpack 中,配置别名 ,替换…

设计模型-工厂方法模式

1、什么是工厂方法 工厂方法模式(Factory Method),又称多态性工厂模式,属于设计模式三大分类中的创建型模式,作为抽象工厂模式的孪生兄弟,工厂方法模式定义了一个创建对象的接口,但由子类决定要…

【Quarkus技术系列】「序章」打造基于Quarkus的云原生微服务框架实践的理论知识基础

前提介绍 本系列文章主要讲解如何基于Quarkus技术搭建和开发“专为Kubernetes而优化的Java微服务框架”的入门和实践,你将会学习到如何搭建Quarkus微服务脚环境及脚手架,开发Quarkus的端点服务,系统和应用层级的配置介绍与Quarkus的编程模型…

String类介绍

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录前言一.String类的简单解释二.String类的方法介绍2.1 字符串的声明2.2 字符串的比较第一种比较方法第二种的比较方式第三种比较方式第四种比较的方式2.3字符串的查找…

架构师必读 —— 逻辑模型(12)

头脑风暴的5项原则 为了得出更好的想法,进行发散思维是很重要的,巧妙地运 用头脑风暴来尽情地发散吧!头脑风暴的秘诀就是自由想象。如果因为害怕被骂而怯于表达自己的想法,或者不好意思在人前发言,好不容易想到的点子也…

6.npm

目录 1 下载包 2 下载包非最新的版本 3 package.json 4 一次安装多个包 5 删除 node_modules 6 一次安装项目中的所有包 7 卸载包 8 将包放入devDependencies中 9 换源 9.1 手动换源 9.2 工具换源 10 全局下载 10.1 下载与卸载 10.2 一些常用的全局…

QUIC协议

一 简介 QUIC(Quick UDP Internet Connection)是Google提出的一个基于UDP的传输协议,因其高效的传输效率和多路并发的能力,已经成为下一代互联网协议HTTP/3的底层传输协议。除了应用于Web领域,它的优势同样适用于一些通用的需要低延迟、高吞…

Android入门第53天-在Android手机里使用SQLite内嵌式数据库

介绍 Android内带SQLite内嵌式数据库了。这对于我们存储一些更复杂的结构化数据带来了极大的便利。比如说我们要存储应用内的常用联系人,购物车暂存信息,常量。必竟从xml或者是json里取数据都没有一条Select语句来得简单。 SQLite常用有五种数据类型: …

第04讲:Redis消息的发布和订阅

一、什么是消息的发布和订阅 Redis 发布订阅 (pub/sub) 是一种消息通信模式:发送者 (pub) 发送消息,订阅者 (sub) 接收消息。 Tip:Redis 客户端(redis-cli)可以订阅任意数量的频道。 二、Redis的发布和订阅的原理 客…

ssh端口转发

ssh端口转发ssh端口转发Centos7关闭IPV6sshd服务端sshd_config配置调整(非必需)优化sshd_config配置(非必需)调整ssh客户端配置~/.ssh/config ---必须ssh终端转发socks5端口ssh终端命令行转发到socks5ssh_config配置端口转发SOCKS5使用ssh将后端的服务端口转发到localssh端口转…

selenium网络爬虫去哪儿机票利用performance获取日志截获加载的xhr,ajax,js等数据

这次练习获取的网站使用了许多反爬技术: 1.html页面使用了css字体偏移 2.xhr加载有webdriver反爬检测 3.请求接口使用了多项加密参数以及cookie验证 4.部分js代码用了ob混淆 一开始只是想学习练手一下css偏移学习后是解决了,但想获取页面源代码时候遇…

Apache Traffic Server 存在拒绝服务漏洞

漏洞描述 Apache Traffic Serve(ATS) 是一个开源的 HTTP/1.1 和 HTTP/2 缓存代理服务器,uri_signing 是 ATS 的一款 URI 签名插件,用来阻止所有不具有有效 JWT 的请求。 Apache Traffic Server 的受影响版本中存在拒绝服务漏洞&…

人工神经网络 ANN 基础概念

目录 一:简介 二:感知器 三:权重和阈值 四:多层前馈网络 五:BP神经网络 一:简介 机器学习是实现人工智能的方法,深度学习是实现机器学习的技术。在实现人工智能时需要人工辅助(半自动)&…

图像分类:Pytorch图像分类之--LetNet模型

文章目录前言LetNet简介程序的实现model.py的实现LetNet模型操作流程经过Conv卷积后输出尺寸的计算公式如下Conv2d()函数介绍MaxPool2d()函数介绍Tensor的展平:view()train.py导入数据集加载数据集参数设置训练数据保存模型train_tool.pypred…

前端基础(十四)_隐藏元素的方法

隐藏元素的方法 1、display 通过display:none来控制元素隐藏 不使用&#xff1a; <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content"IEedge">…

以数据驱动的自动驾驶时代,还有多远?丨曼孚科技

自动驾驶即将来到数据驱动时代。 在经历了硬件(激光雷达)、软件(多传感器融合)等技术革新后&#xff0c;自动驾驶迎来了第三波浪潮。 去年&#xff0c;除造车新势力外&#xff0c;国内一批主机厂吉利、上汽、广汽等&#xff0c;纷纷加大了自动驾驶数据标注业务投入。到今年&a…

参加 Spartacus 开源项目开发时需要注意的一些编程规范

我们使用 NgRx 存储来管理 Spartacus 功能中的全局应用程序状态。 使用 NgRx 在性能、更好的可测试性和易于故障排除、方面具有明显的优势。 除非有令人信服的理由不这样做&#xff0c;否则在某项 feature 的开发里&#xff0c;请总是使用 Rgrx 来管理状态。 使用 Store 并不…

PS CS6视频剪辑基本技巧(二)视频剪接和添加图片

上一讲&#xff0c;介绍了PS CS6可以实现视频剪接、添加图片、添加声音、添加字幕、添加logo、添加动画等6种功能&#xff0c;今天这讲介绍一下视频剪接和添加图片这两个功能。 目录 一、基本操作 1、打开时间轴窗口 2、创建时间轴 二、视频剪接 1、打开已存在的视频文件…