【问题标题】:Check if current directory contains package.json and who's name is equal to value检查当前目录是否包含 package.json 和 who's name 是否等于 value
【发布时间】:2016-08-06 06:46:56
【问题描述】:

当我在终端中触发自定义命令时,我正在尝试做两件事:

  1. 检查当前目录是否有 package.json(类似于检查 process.cwd() + '/package.json' 是否存在)。
  2. 检查 package.json 中的名称是否等于“customName”的某个值

【问题讨论】:

    标签: javascript node.js npm node-modules


    【解决方案1】:

    您可以利用require() 可用于加载 JSON 文件这一事实。

    'use strict';
    
    try {
      var packageData = require(process.cwd() + '/package.json');
    } catch (e) {
      // There was no package.json
      console.log('no package.json found!');
      return;
    }
    
    console.log("name is", packageData.name);
    

    【讨论】:

    • 有没有类似的方法没有try catch?例如,在伪代码中,如果 (package is not found or name != 'customName') then process.exit()?
    • 在这种情况下为什么要避免try/catch
    • 我有相当多的逻辑不想包含在尝试中。但是我会抽象成它们各自的功能。感谢您的帮助。
    猜你喜欢
    • 2020-05-25
    • 1970-01-01
    • 2023-03-28
    • 2011-05-04
    • 1970-01-01
    • 1970-01-01
    • 2020-05-24
    • 2019-10-10
    • 2010-10-11
    相关资源
    最近更新 更多