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

类似酷家乐做庭院的网站新乡手机网站建设哪家专业

类似酷家乐做庭院的网站,新乡手机网站建设哪家专业,昆明小程序推广,南昌专业网站排名推广最近在使用TypeScript编写后台接口时#xff0c;需要读取yaml配置文件#xff0c;使用到了yaml这个nodejs库#xff0c;其npm官网地址为#xff1a;https://www.npmjs.com/package/yaml#xff0c;github源代码地址为#xff1a;github.com/eemeli/yaml比如有如下的confi…最近在使用TypeScript编写后台接口时需要读取yaml配置文件使用到了yaml这个nodejs库其npm官网地址为https://www.npmjs.com/package/yamlgithub源代码地址为github.com/eemeli/yaml比如有如下的config.yaml配置文件rxmqtt:host: 127.0.0.1port: 11883user: testuserpwd: 123456id: this_is_test_2000804_nodejs_waterclean: truedbsql:host: 127.0.0.1port: 3306user: rootpwd: 123456database: testdbredis:host: 127.0.0.1port: 7001pwd: 123456index: 0http: 8088rpcUrl: 127.0.0.1:18885enableMqtt: trueenableDB: trueenableRedis: trueenableWS: trueenableRPC: falseofflineTimeout: 90000cacheInterval: 10000使用typescript针对上述config.yaml文件编写对应的config.ts文件如下import YAML require(yaml)import fs require(fs)declare interface MqttConnOpt{host: string;port: number;user: string;pwd: string;clean: boolean;id: string;}declare interface DBConnOpt{host: string;port: number;user: string;pwd: string;database: string;}declare interface RedisConnOpt{host: string;port: number;pwd: string;db: number;}export {MqttConnOpt,DBConnOpt,RedisConnOpt,Config,}class Config {rxmqtt: MqttConnOpt;dbsql: DBConnOpt;redis: RedisConnOpt;/*** http 端口*/http: number;/*** rpcUrl 服务器地址*/rpcUrl: string;/*** 是否启用mqtt*/enableMqtt: boolean;/*** 是否启用mariadb*/enableDB: boolean;/*** 是否启用redis*/enableRedis: boolean;/*** 是否启用websocket*/enableWS: boolean;/*** 是否启用RPC*/enableRPC: boolean;/*** 离线超时时间, 毫秒*/offlineTimeout: number;/*** 缓存存储间隔, 毫秒*/cacheInterval: number;constructor(){try{let buffer fs.readFileSync(config.yaml, utf8);let config YAML.parse(buffer);this.rxmqtt config[rxmqtt];this.dbsql config[dbsql];this.redis config[redis];this.http config[http];this.rpcUrl config[rpcUrl];this.enableMqtt config[enableMqtt];this.enableDB config[enableDB];this.enableRedis config[enableRedis];this.enableWS config[enableWS];this.enableRPC config[enableRPC];this.offlineTimeout config[offlineTimeout];this.cacheInterval config[cacheInterval];}catch(err){console.log(err)}}/*** save*/public save() {try{fs.writeFileSync(config.yaml, YAML.stringify(this))}catch(err){console.log(err)}}}对应的config.js文件如下所示use strict;exports.__esModule true;exports.Config void 0;var YAML require(yaml);var fs require(fs);var Config /** class */ (function () {function Config() {try {var buffer fs.readFileSync(config.yaml, utf8);var config YAML.parse(buffer);this.rxmqtt config[rxmqtt];this.dbsql config[dbsql];this.redis config[redis];this.http config[http];this.rpcUrl config[rpcUrl];this.enableMqtt config[enableMqtt];this.enableDB config[enableDB];this.enableRedis config[enableRedis];this.enableWS config[enableWS];this.enableRPC config[enableRPC];this.offlineTimeout config[offlineTimeout];this.cacheInterval config[cacheInterval];}catch (err) {console.log(err);}}/*** save*/Config.prototype.save function () {try {fs.writeFileSync(config.yaml, YAML.stringify(this));}catch (err) {console.log(err);}};return Config;}());exports.Config Config;相关参考资料本文同步分享在 博客“雪域迷影”(CSDN)。如有侵权请联系 supportoschina.cn 删除。本文参与“OSC源创计划”欢迎正在阅读的你也加入一起分享。
http://www.lebaoying.cn/news/907.html

相关文章:

  • 设计好网站网站备案信息更改
  • 网站促销活动策划福州建设注册中心网站
  • phpmysql网站开发全程实例 第2版椒江网站制作
  • 网站自适应宽度营销网站设计