码迷,mamicode.com
首页 > 其他好文 > 详细

模块化

时间:2019-11-07 23:42:58      阅读:108      评论:0      收藏:0      [点我收藏+]

标签:一级目录   nbsp   col   通信   必须   str   报错   find   第三方模块   

模块化

  • 文件作用域
  • 通信规则

      加载
      导出
    
模块分类 (模块标识)
 1、核心模块
        核心模块文件已经编译到了二进制文件中,只需要按照名字使用

     require(‘fs’)
 

2、第三方模块
        必须通过npm下载,使用时可以通过require(‘包名‘)进行加载
            原理:
                先找到当前文件所处目录中的node_modules
                node_modules/art-template
                node_modules/art-template/package.json
                node_modules/art-template/package.json 文件中的main属性
                main属性记录了art-template入口模块
                然后加载使用第三方包
              

     如果package不存在或main中没有指定入口模块
                自动找该目录下index.js
                
                如果以上所有任何一个条件都不成立,则会进入上一级目录找node_modules
                依此类推,直到磁盘根目录,如果都找不到,报错 can not find module xxx
        
 3、用户模块
        导入需要相对路径 ./    ./当前目录   ../ 上一级目录
        后缀名可以省略


 node中没有全局作用域,只有模块作用域(文件作用域)

模块查找机制:
    优先从缓存加载
    核心模块
    路径形式的模块
    第三方模块


模块化

标签:一级目录   nbsp   col   通信   必须   str   报错   find   第三方模块   

原文地址:https://www.cnblogs.com/huangyuanning/p/11816176.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!