zoukankan      html  css  js  c++  java
  • npm包发布过程

    在上一章节中,我封装了一个基于react的树状组件,后来想把它发布到npm上,下面主要介绍一下发布过程中遇到的问题:

    1、去注册npm账号,注册地址(https://www.npmjs.com), 再登录 npm login输入账号密码

    2、发布前需要先打包,不能直接发布react的组件源码

    babel src --out-dir lib --copy-files

    如果用到less还需要编译为css

    lessc src/components/Tree.less src/components/tree.css

    3、配置你的package.json,注意name是不能和npm库里面已有的重复,main是你的入口文件

    {
      "name": "react-tree-component-select",
      "version": "1.0.2",
      "description": "A Tree Component For React",
      "main": "lib/index.js",
      "scripts": {
        "test": "echo "Error: no test specified" && exit 1",
        "dev": "webpack-dev-server --config webpack.dev.conf.js",
        "build": "webpack --config webpack.conf.js",
        "publish": "lessc src/components/Tree.less src/components/tree.css && babel src --out-dir lib --copy-files"
      },
      "repository": {
        "type": "git",
        "url": "git+https://github.com/marhovey/react-tree.git"
      },
      "keywords": [
        "react",
        "react-tree",
        "tree",
        "component"
      ],
      "author": "marhovey",
      "license": "ISC",
      "bugs": {
        "url": "https://github.com/marhovey/react-tree/issues"
      },
      "homepage": "https://github.com/marhovey/react-tree#readme",
      "devDependencies": {
        "@babel/cli": "^7.4.3",
        "@babel/core": "^7.4.3",
        "@babel/preset-env": "^7.4.3",
        "@babel/preset-es2015": "^7.0.0-beta.53",
        "@babel/preset-react": "^7.0.0",
        "@babel/preset-stage-0": "^7.0.0",
        "@babel/runtime": "^7.4.3",
        "autoprefixer": "^9.5.1",
        "babel-loader": "^8.0.5",
        "css-loader": "^2.1.1",
        "file-loader": "^3.0.1",
        "html-webpack-plugin": "^3.2.0",
        "less": "^3.9.0",
        "less-loader": "^4.1.0",
        "mini-css-extract-plugin": "^0.6.0",
        "open-browser-webpack-plugin": "0.0.5",
        "postcss": "^7.0.14",
        "postcss-loader": "^3.0.0",
        "style-loader": "^0.23.1",
        "transfer-webpack-plugin": "^0.1.4",
        "url-loader": "^1.1.2",
        "webpack": "^4.30.0",
        "webpack-cli": "^3.3.1",
        "webpack-dev-server": "^3.3.1"
      },
      "dependencies": {
        "react": "^16.8.6",
        "react-dom": "^16.8.6"
      }
    }

    4、打包以后就可以执行npm publish发布了。

    5、发布成功以后使用npm i react-tree-component-select,在项目中import验证,

    6、更新版本也是执行npm publish版本号需要修改

    react-tree-component-select项目github地址    
  • 相关阅读:
    C#面向对象--类
    Unity DOTS--面向数据编程前的准备
    C#面向对象--命名空间
    C#面向对象--多态
    C#面向对象--继承
    C#中堆和栈的区别
    sql执行顺序
    cookie session
    栈和队列
    c# 单例模式
  • 原文地址:https://www.cnblogs.com/marvey/p/10796451.html
Copyright © 2011-2022 走看看