美文网首页
脚手架开发初始化

脚手架开发初始化

作者: yanmingfei | 来源:发表于2021-04-29 10:45 被阅读0次

上篇文章已经讲过如何在npm发布一个自己的项目用于使用。
本篇文章致力于讲解如何制作一个带有全局命令的项目。

发布带有全局命令的项目

如vue-cli,类型的,不过我们还是循序渐进,慢慢前行。

1、创建一个项目,使用npm init -y来初始化项目
2、新建bin目录,在bin目录下书写index.js文件
3、index.js文件中最顶部书写 #!/usr/bin/env node(环境变量中注入)
4、在npm 进行发布
5、全局安装,注意,发布时如果在项目下进行发布后,并且在当前目录的外部进行npm install -g xx 进行安装,那么查看环境变量,它会软链至当前项目,方便后续继续开发。如果在其它目录 进行全局安装,那么它是以外链至npm的方式和当前项目无关。
6、可以在index.js目录下通过process.env.argv 来获取用户的输入,根据输入进行相应的响应即可。

image.png
image.png

环境中注入

若是有使用过Linux或者Unix的前端开发者,对于Shebang应该不陌生,它是一个符号的名称,#!。这个符号通常在Unix系统的基本中第一行开头中出现,用于指明这个脚本文件的解释程序。了解了Shebang之后就可以理解,增加这一行是为了指定用node执行脚本文件。

当你输入一个命令的时候,npm是如何识别并执行对应的文件的呢?具体的原理阮一峰大神已经在npm scripts 使用指南中介绍过。简单的理解,就是输入命令后,会有在一个新建的shell中执行指定的脚本,在执行这个脚本的时候,我们需要来指定这个脚本的解释程序是node。

为了解决这个问题,首先需要了解一下/usr/bin/env。我们已经知道,Shebang是为了指定脚本的解释程序,可是不同用户或者不同的脚本解释器有可能安装在不同的目录下,系统如何知道要去哪里找你的解释程序呢? /usr/bin/env就是告诉系统可以在PATH目录中查找。 所以配置#!/usr/bin/env node, 就是解决了不同的用户node路径不同的问题,可以让系统动态的去查找node来执行你的脚本文件。

看到这里你应该理解,为什么会出现No such file or directory的错误?因为你的node安装路径没有添加到系统的PATH中。所以去进行node环境变量配置就可以了。

要是你只是想简单的测试一下,那么你可以通过which node命令来找到你本地的node安装路径,将/usr/bin/env改为你查找到的node路径即可。

最后需要说明的一点是,windows不支持Shebang,它是通过文件的扩展名来确定使用什么解释器来执行脚本。

相关文章

  • 01react基础-脚手架

    使用React脚手架初始化项目 脚手架是开发现代Web应用的必备 充分利用 Webpack,Babel,ESLin...

  • 个人笔记|给自己看的使用Vue脚手架

    初始化脚手架 看同文集下 搭建vue开发环境 脚手架结构 main.js整个项目的入口文件//引入Vueimpor...

  • Angular2-Step 1

    前提需知:node、npm 包管理器 安装脚手架 @angular/cli 用于初始化、开发、搭建 Angular...

  • Egg + Vue 服务端渲染开发指南

    1. 项目初始化 1.1 通过 easywebpack-cli 脚手架初始化 安装脚手架 npm install ...

  • 2.Nuxt 项目初始化

    一、利用vue-cli脚手架初始化项目 1. 安装脚手架 npm i -g vue-cli 2. 利用脚手架初始化...

  • 一、采用create-react-app脚手架初始项目

    1、采用脚手架初始化项目 安装create-react-app脚手架 使用typescript 初始化成功后可以看...

  • 脚手架开发初始化

    上篇文章已经讲过如何在npm发布一个自己的项目用于使用。本篇文章致力于讲解如何制作一个带有全局命令的项目。 发布带...

  • 什么是Vue CLI

    安装Vue脚手架(这个命令是安装脚手架3的) Vue CLI2初始化项目 Vue CLI3初始化项目

  • Taro3.4开发微信小程序示例

    一、安装脚手架并初始化项目 安装脚手架 初始化如下图,选择Vue3、Less、vue3-NutUI模板: 二、安装...

  • React 脱离脚手架

    React脱离脚手架配置webpack 1.项目初始化 2.安装生产依赖 3.安装开发依赖 4.构建目录结构 5....

网友评论

      本文标题:脚手架开发初始化

      本文链接:https://www.haomeiwen.com/subject/paiirltx.html