在 yeoman 生成器的方法中将字符串解析为 json

parsing the string into the json in the method of yeoman generator

我正在使用 yeoman 生成器创建带有模板的代码,其中模板的数据作为字符串在选项中传递,如下所示,

yo express-no-stress myapp --data {"title":"Type"}

此字符串数据稍后可以在安装方法中解析为 JSON。

  install() {
      async app() {
         let str = this.options.data;
         if(str != undefined && typeof str == 'string') {
              console.log(str);
              let field_property = JSON.parse(str);
         }
        .....
      } // parseapp 
  }// install 

但是当运行应用程序时,它总是遇到错误说 "syntaxError: Unexpected token t in JSON at position 1" 在 JSON.parse() 方法中。

我不明白为什么它会导致这个错误,任何想法,谢谢。

您必须在命令行中用单引号将 JSON 括起来:

yo express-no-stress myapp --data '{"title":"Type"}'

否则你的 shell 会尝试评估它。