Cordova CLI源码分析(三)——初始化
本部分主要涉及以下三个文件
1 cli.js
2 cordova.js
3 events.js
通过前一篇package.json的分析,可以知道,当命令行执行cordova相关命令时,首先调用main参数指向的cordova.js文件,加载模块的相关信息,把内部接口暴露出来,起到初始化作用,方便后续模块内部调用各部分接口;
然后bin 指向的./bin/cordova 文件,执行
1. .#!/usr/bin/env node
2. var CLI = require('../src/cli');
3. new CLI(process.argv);
调用 src/cli,js文件,这个文件才是真正解析命令行参数,并执行对应操作的内容;
cli.js源码
源码中加入了必要的注释;这段代码的主要作用就
1)提取参数,然后调用针对命令参数,分别调用不同接口函数;
2)Log和debug信息输出设置判断
3)栈崩溃信息的美化处理
再来看一下cordova.js文件
var events = require('events');var emitter = new events.EventEmitter();module.exports = emitter;3)Module.exports中暴露出必要的参数接口