当前位置: 首页 > news >正文

怎样做电子商务网站免费域名解析平台

怎样做电子商务网站,免费域名解析平台,数据机房建设公司,成都网站建设代理加盟模块化的定义 讲一个复杂的程序文件按照一定的规则拆分成多个独立的小文件,这些小文件就是小模块,这就是模块化。 每个小模块内部的数据是私有的,可以暴露内部数据给外部其他模块使用。 模块化优点 减少命名的冲突提高复用性提高可维护性按需…

模块化的定义

讲一个复杂的程序文件按照一定的规则拆分成多个独立的小文件,这些小文件就是小模块,这就是模块化。
每个小模块内部的数据是私有的,可以暴露内部数据给外部其他模块使用。

模块化优点

  • 减少命名的冲突
  • 提高复用性
  • 提高可维护性
  • 按需加载

模块化使用

1.单个模块暴露

// index.js
const userObj = require("./user.js");
// 调用收到的函数 user()
userObj();
// user.js
function user(){console.log("这是用户信息。");
}
// 对外暴露 user 数据
module.exports = user;

2.多个模块暴露

// index.js
const userObj = require("./user.js");
// 分别使用对外暴露的函数
userObj.user();
userObj.userInfo();
// user.js
function user(){console.log("这是用户。");
}
function userInfo(){console.log("这是用户信息。");
}
// 方式一:对外暴露 user 和 userInfo 数据对象
module.exports = {user,userInfo
};
// 方式二:单独暴露 user 和 userInfo 数据
exports.user = user;
exports.userInfo= userInfo;

暴露数据时,不能使用 exports = user 形式暴露,返回的是一个空对象。
exports 和 module.exports 的关系:exports = module.exports = { }

因为 require() 加载其他模块的时候,返回结果的目标模块中 module.exports 的值。

导入模块注意点

  1. 导入自己创建的模块时,使用相对路径,并且不能省略 ./ 和 …/
// 正确
const userObj = require("./user.js");
// 错误
const userObj = require("user.js");
  1. 导入的模块文件如果是 .js 或 .json 可以省略后缀
const userObj = require("./user");

如果导入的模块是其他类型的,默认以 js 模块文件处理(.txt .doc)。

  1. 导入文件夹
const userObj = require("./module");

如果导入的是文件夹,那么先去找该文件夹下 package.json 文件中的 main 属性对应的路径文件,如果有此文件,就导入该文件,否则找不到此文件就会报错。

// ./module/package.json
// 找到后导入
{"main": "./main.js"  
}
// 没有此文件报错
{"main": "./main2.js"   
}

如果 main 属性找不到,或者 package.json 也找不到,就去该文件夹下找到 index.jsindex.json 文件,如果找到了这两个文件就会导入,否则也报错。

// ./module/index.js
module.exports = "暴露出去的信息"

也就是 package.json 文件中的 main 属性对应的路径文件 main.jsmodule 文件夹下 index.js 文件其中一个存在即可。

导入模块的基本流程

  1. 将相对路径转为觉得路径,path.resolve(),定位目标文件;
  2. 缓存检测,若读取过文件,从缓存中再次读取,否则重新读取;
  3. 读取目标文件代码,readFile();
  4. 包裹一个函数并自执行,通过arguments.callee.toString()查看自执行函数;
  5. 缓存模块的值,将读取过得文件进行缓存;
  6. 返回 module.exports 的值。
http://www.hkea.cn/news/996881/

相关文章:

  • ASP做网站源代码大专网络营销专业好不好
  • 网络公司网站 优帮云做网站排名服务热线
  • 制作网页设计软件列表案例谷歌seo 优化
  • wordpress网站备案上海搜索推广
  • 网站建设套餐有哪些安卓在线视频嗅探app
  • 做电影网站要买什么重庆seo网站哪家好
  • 广州北京网站建设公司网站外部优化的4大重点
  • 网站建设书优化大师是干什么的
  • 优秀的网站建设公司百度指数人群画像
  • wordpress企业中文模板太原seo哪家好
  • 广东网广东网站建设网站推广方案模板
  • 网站运营知识快手seo
  • 咖啡公司网站建设策划书微信营销方式
  • 柳江区城乡住房建设局网站上海seo优化服务公司
  • 西城企业网站建设企业网站怎么优化
  • 初学者做动态网站项目例子游戏特效培训机构排名
  • 汽车类网站搭建直链平台
  • 做网站遇到的困难总结网络营销软件代理
  • 做网站登录论坛外链代发
  • 东营专业网站建设公司排行青岛谷歌优化公司
  • 公众号和网站先做哪个口碑营销的形式
  • 长沙企业建网站费用关键词搜索推广排行榜
  • 怎么做网站端口代理沧州网络推广外包公司
  • php wordpress 目录seo课程培训机构
  • 常州网站建设方案优化引流app推广软件
  • 网络营销网站建设实训网络营销步骤
  • 网站都有后台吗百度竞价开户公司
  • 秭归网站建设网站seo优化心得
  • wordpress电影网站模板seo运营
  • 公司注册网上核名业务如何终止网站排名优化怎么做