一、NPM简略介绍
1. npm -v、npm version
查看NPM安装的版本
2. npm init
通过该命令可以生成一个package.jsonwenjian文件。这个文件是整个项目的描述文件。 通过这个文件可以清楚地知道项目的包依赖关系、版本、作者信息等。每个NPM包都有自己的package.json文件。
3.npm install
通过该命令安装包。在安装包的时候在该命令后添加 --save或-S参数,这样安装包的信息将会记录在package.json文件的 dependencies 字段中,这样可以很方便地管理包的依赖关系。
如果这个包只是在开发阶段需要的,可以继续添加 -dev参数,这样安装包的信息将会记录在package.json文件的 devDependencies 字段中。
4.package.json文件
该文件是提供包描述的文件。在Node.js中,一个包是一个文件夹,文件夹中的package.json文件以json格式存储该包的相关描述。
文件中所有字段的说明: docs.npmjs.com/cli/v7/conf…
二、模块加载原理与加载方式
1.require 导入模块
Node.js中的模块可以分为原声模块和文件模块。在Node.js中可以通过 require 方法导入模块、exports 方法导出模块。
对于原声模块(如 http),只需要使用 require('http')导入这个模块并将其赋值给一个变量,即可使用这个模块导出的属性、方法(即函数)。
对于文件模块,可以使用 “./” 前缀来指代当前路径,从而使用相对路径来加载模块。加载模块时,可以省略.js扩展名。例如,在同级的文件夹node中有一个名为 myModule.js的文件模块,可以这样导入:
const myModule = require('./node/myModule');
在 node_modules 文件夹的同级目录可以这样加载:
const underscore = require('./underscore');
这是因为 Node.js 内部会自动查找加载 node_modules 文件夹下的模块。
2.exports 导出模块
一个模块中的变量和方法只能用于这个模块,如果想要与其他模块共享一些方法、属性等,就可以用 exports 导出一个对象,这个对象可以包含想要与其他模块共享的方法和属性等。
#require引入文件与import引入文件之间的区别
1、遵循规范
require 是 AMD规范引入方式
import是es6的一个语法标准,如果要兼容浏览器的话必须转化成es5的语法
2、调用时间
require是运行时调用,所以require理论上可以运用在代码的任何地方
import是编译时调用,所以必须放在文件开头
3、本质
require是赋值过程,其实require的结果就是对象、数字、字符串、函数等,再把require的结果赋值给某个变量
import是解构过程,但是目前所有的引擎都还没有实现import,我们在node中使用babel支持ES6,也仅仅是将ES6转码为ES5再执行,import语法会被转码为require
链接:https://www.jianshu.com/p/0fb49a748f80
import使用方法
www.jb51.net/article/180…