0

我正在尝试使用 NPM 作为我的 ASP.NET 5 (Vnext) 构建工具以及用于构建我的 js/cs 文件,但我不想在我的 npm 和 asp.net 5 配置文件中复制配置值。

在我的项目中,我有以下文件

包.json

"scripts": {
  "build:js": "browserify assets/scripts/main.js > $npm_package_config_aspnet5_webroot/main.js"
}

项目.json

{
    "version": "1.0.0-*",
    "webroot": "wwwroot",
}

我希望能够从 ASP.NET 5 json 文件中提取 webroot 值并在 npm scripts 命令中使用它,如下所示

4

1 回答 1

0

jsonnpm 包是一个非常酷的CLI 工具,我一直在使用它来完成类似的事情。您可以使用它来提取 json 文件的各个值。将此与 bash 脚本相结合意味着您可以相当简单地从 project.json 中提取 asp.net webroot。

假设您的 project.json 看起来像这样:

{
    "webroot": "www/"
}

您可以使用 json 工具,如下所示:

$ json -f project.json webroot
www/

现在,它只是将它与你的 build:js 命令结合起来的一个例子:

"scripts": {
    "build:js": "browserify assets/scripts/main.js > $(json -f project.json webroot)/main.js"
}

您还可以通过提取值来创建一个 npm 任务,如果您需要多次使用它,这将很有用:

"scripts": {
    "getwebroot": "json -f project.json webroot",
    "build:js": "browserify assets/scripts/main.js > $(npm run getwebroot -s)/main.js",
    "build:css": "cat assets/styles/* > $(npm run getwebroot -s)/style.css"
}
于 2015-07-08T20:32:14.167 回答