封装 config.js 模块|学习笔记

简介: 快速学习封装 config.js 模块

开发者学堂课程【Node.js 入门与实战封装config.js模块】学习笔记,与课程紧密联系,让用户快速学习知识

课程地址https://developer.aliyun.com/learning/course/588/detail/8308


封装config.js模块

 

基本内容

一、配置模块的提取

二、config.json

 

一、配置模块的提取

//模块一(服务模块) :负责启动服务

//模块二(扩展模块):负责扩展 req 和 res 对象,为 req 和 res 增加以下更方便好用的 API

//模块三路由模块):负责路由判断

//模块四(业务模块):负责处理具体路由的业务的代码

//模块五(数据操作模块)负贵进行数据库操作

//模块六(配置模块) :负责报错各种项目中用到的配置信息

// 1.加载 http 模块

var http =require( 'http);

var context = require(' ./context.js');  

var router = require('./router.js );

var config = require('./config.json ); //require的返回值config 是什么

json 的对象。比如说没有在这个 config.json 里面设置它导出内容类型,这里不需要设置,因为它本身就是个 json 文件,所以根本不需要设置,返回的就是 json 对象。

console.log('1');

//var count=0;//这里的代码只有在第一次启动的时候会执行一次。

//2.创建服务

http. createServer(function(req, res) {

// count++i;//这里的代码每次请求都会执行

console.log('哈哈');  

//Context.js 模块的返回值函数),并将reqres对象传递给Context.js模块

context(req, res);

//调用路由模块的返回值(函数),并将 req 和 res 对象传递给 router.js 模块

router(req, res);

}).listen(config.port, function() {

console . log( ' http://localhost:  config.port');

});


二、config.json

1、至于像这样(http://localhost:9090)的端口号,或者是文件的路径,比如说读取写入 data.json 文件,这样的路径都是写死,这样东西也要把它提取出来,这些就配置信息

把这些配置信息单独进到一个文件夹;在程序中要用到的话,只要从那个配置文件中读取,这个怎么进行的下去?

先新建一个模块,这个模块因为保存这些配置信息,所以把这个模块叫做config.json,一个文件模块可以是一个 js 文件,json 文件或者等等,现在就创建json 文件,json 文件里面直接就是 json 的格式对象

第一个要在里面保存什么呢?

要保存一个服务的端口号;在 json 里面写入 port,比如是9091,这样端口号就保存成功。

{

“port”: 9091

}

2、如果在这个 config.json 里面保存信息,保存 data.json 这个文件的路径该怎么写程序

l 错误例子不能在 json 文件中这样写以下程序只可以在 js 文件中存在

var path = require(“path”);

{

“port”: 9091

datapath”path.join(__dirname,’data’,’data.json’)

}

l 正确示范:(在config.js文件中

var path = require(“path”);

muddle.expors = {

“port”: 9091

datapath”path.join(__dirname,’data’,’data.json’);

viewpath”path.join(__dirname,views’)//用之前模块的根目录拼接view模块路径

};

在js文件中的正确的程序步骤

// 1.加载 http 模块

var http =require( 'http);

var context = require(' ./context.js');  

var router = require('./router.js );

var config = require('./config.js ); 

console.log('1');

//var count=0;//这里的代码只有在第一次启动的时候会执行一次。

//2.创建服务

http. createServer(function(req, res) {

// count++i;//这里的代码每次请求都会执行

console.log('哈哈');

//Context.js模块的返回值函数),并将 req res 对象传递给 Context.js 模块

context(req, res);

//调用路由模块的返回值(函数),并将 req 和 res 对象传递给 router.js 模块

router(req, res);

}).listen(config.port, function() {

console . log( ' http://localhost:  config.port');

});

3、打开 cmd 进行测试访问9091,读取文件正常测试完成

相关文章
|
7月前
|
API
在vite.config.js 配置代理
在vite.config.js 配置代理
737 2
|
3月前
|
JavaScript
Vue3基础(19)___vite.config.js中配置路径别名
本文介绍了如何在Vue 3的Vite配置文件`vite.config.js`中设置路径别名,以及如何在页面中使用这些别名导入模块。
122 0
Vue3基础(19)___vite.config.js中配置路径别名
|
4月前
|
JavaScript 数据安全/隐私保护
如何在Vue组件中调用封装好的外部js文件方法
这篇文章介绍了如何在Vue组件中调用封装好的外部js文件方法,包括在Vue项目中全局引入外部js文件,并在组件中通过this.$myMethod()的方式调用外部js文件中定义的方法。
如何在Vue组件中调用封装好的外部js文件方法
|
7月前
|
JavaScript 前端开发
js如何实现导入
js如何实现导入
68 0
|
7月前
|
前端开发 JavaScript
React 配置别名 @ ( js/ts 项目中通过 webpack.config.js 配置)
React 配置别名 @ ( js/ts 项目中通过 webpack.config.js 配置)
176 0
|
JavaScript 前端开发 C#
js代码如何封装
js代码如何封装
98 0
【vue2小知识】实现store中modules模块的封装与自动导入
store仓库中分模块时的需要每次导入index的问题
【vue2小知识】实现store中modules模块的封装与自动导入
Egg.js 项目初始化介绍
Egg.js 项目初始化介绍
130 0
Egg.js 项目初始化介绍
|
JavaScript 开发者
封装 handler.js 模块|学习笔记
快速学习 封装 handler.js 模块
封装 handler.js 模块|学习笔记
|
JSON JavaScript 数据格式
测试使用 Context.js 模块|学习笔记
快速学习测试使用 Context.js 模块
测试使用 Context.js 模块|学习笔记