react 组件封装原则_如何基于antd封装自己的react组件并发布到npm

本文介绍了如何将项目中的React组件进行封装,并发布到npm。首先,你需要具备Node.js、Git基础,熟悉npm和React。然后,配置git仓库,初始化npm项目,配置.babelrc文件以按需加载antd样式。接着,安装相关依赖,编写组件代码,使用webpack打包。最后,创建测试应用验证组件,并通过`npm publish`将组件发布到npm。
摘要由CSDN通过智能技术生成

引言

在前端项目开发过程中,有大量重复的内容,比如布局相似的模块,较多的功能表单等,我们可以提炼成组件来提升效率,减少重复建设。文章以实际工作中的项目为例,介绍如何将项目中常用的组件进行封装并发布到npm中。

1 前提要求

在开始前你需要具备以下条件:安装了Node & npm

安装了Git

基本掌握npm ,git使用方法

熟练使用 JavaScript & ES6 & CSS

基本掌握React

熟悉React ,antd

2 开始

2.1 配置git和npm

本次将我的组件库命名为nsc-components

首先配置git ,在github上创建一个新的远程仓库nsc-components,在本地运行git clone 命令,将nsc-components克隆到本地

$ git clone https://github.com/你的账户名/nsc-components

配置 npm,运行npm login,登录你的npm账号。然后运行npm init 初始化生成一个新的package.json文件.

$ npm init

name: (nsc-components)

version: (1.0.0) 0.1.0

description: an example component library with React!

entry point: (index.js)

test command:

git repository:

keywords:

Author:

license: (ISC)

About to write to /Users/alanbsmith/personal-projects/trash/package.json:

{

"name": "nsc-components",

"version": "0.1.0",

"description": "an example component library with React!",

"main": "dist/index.js",

"scripts": {

"test": "echo \"Error: no test specified\" && exit 1"

},

"author": ,

"license": "ISC"

}

Is this ok? (yes)

在根目录下添加以下配置文件

touch .babelrc .eslintrc .gitignore .npmignore README.md.babelrc包含编译阶段一些有用的转转码规则(presets)

.eslintrc包含linter配置

.gitignore和.npmignore分别用于忽略来自 git 和 npm 的文件

README.md也非常重要。这是我们和开源社区交流的主要方式

.babelrc

{

"presets": ["@babel/preset-env", "@babel/preset-react"],

"plugins": [

"@babel/plugin-proposal-class-properties",

"@babel/plugin-proposal-object-rest-spread",

["import", {"libraryName": "antd", "libraryDirectory": "lib", "style":"css"

}],

]

}

注:这里踩了很多坑

加入["import", {"libraryName": "antd", "libraryDirectory": "li

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值