【问题标题】:using local less with npm在 npm 中使用 local less
【发布时间】:2019-06-18 23:49:47
【问题描述】:

是否有任何通过 npm 脚本运行 less 的既定模式?

例如,在我的 package.json 文件中,我有:

{
  "name": "lesstest",
  "description": "less test",
  "main": "dist/index.js",
  "scripts": {
    "build:css": "./node_modules/less/bin/lessc src/less/app.less dist/style.css"
  },
  "devDependencies": {
    "less": "^2.6.0",
  }
}

运行:

./node_modules/less/bin/lessc src/less/app.less dist/style.css

从终端工作得很好,但是当我运行时

npm run build:css

我得到“'。'不被识别为内部或外部命令, 可运行的程序或批处理文件。 " 这是否意味着 npm 脚本中的命令不能包含路径?如果是这样,是否有任何技术可以在不使用 gulp 的情况下执行类似的意图?

【问题讨论】:

    标签: npm less package.json


    【解决方案1】:

    你可以使用"lessc src/less/app.less dist/style.css"

    默认情况下,package.json 在您的 node_modules 文件夹中查找,如果找不到,则在其他位置查找,因此您可以安全地使用下载的依赖项,就像您已全局安装它一样。

    【讨论】:

    • @OussamaEssamadi 请参阅我的回答以获得澄清。您不能在命令行中运行它,但该行必须是您的 package.jsonscripts 部分的一部分。
    • @Sandro 我后来发现我可以使用 npx
    【解决方案2】:

    我只是想稍微澄清一下@JRJurman 的回答。你可以像这样使用lessc

    {
      "name": "lesstest",
      "description": "less test",
      "scripts": {
        "build:css": "lessc src/less/app.less > dist/style.css"
      },
      "devDependencies": {
        "less": "^3.0.0",
      }
    }
    

    作为在 npm 中更全面的 less 模式:您通常还需要集成 less 文件依赖项。 package.json 看起来像这样:

    {
      "name": "lesstest",
      "description": "less test",
      "scripts": {
        "build:css": "lessc src/less/app.less > dist/style.css"
      },
      "devDependencies": {
        "less": "^3.0.0",
      },
      "dependencies": {
        "@foo/bar": "^1.0.0"
      }
    }
    

    在您的本地 baz.less 文件中,您可以像这样引用依赖项:

    @import "@foo/bar/src/a-less-file";
    
    
    • @foo 指的是您的 node_modules 中的相应文件夹 文件夹和bar/src 是嵌套文件夹。
    • a-less-file 指 到您的node_modules/@foo/bar/src 中的a-less-file.less

    【讨论】:

      猜你喜欢
      • 2014-03-27
      • 1970-01-01
      • 2017-11-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-08-31
      • 2015-06-15
      • 1970-01-01
      相关资源
      最近更新 更多