Jade:保存.jade文件时,带有--watch的“TypeError:path必须是字符串”

时间:2014-12-16 23:43:04

标签: string terminal pug typeerror watch

我有玉观看我的目录,自动将模板编译为html文件。 我在命令行中输入了以下内容:jade --watch templates。 这将返回rendered templates/index.html并首先编译.jade文件。 但是当我再次尝试保存.jade文件时,它不会编译,并在命令行中返回此错误:

TypeError: path must be a string at Object.fs.lstat (fs.js:675:11) at renderFile (/usr/local/lib/node_modules/jade/bin/jade.js:172:6) at StatWatcher.<anonymous> (/usr/local/lib/node_modules/jade/bin/jade.js:119:11)

不确定它指的是什么“路径”。但是如果它是目录“templates”,我已经尝试了与引号中的目录相同的命令。

2 个答案:

答案 0 :(得分:5)

这显然只是当前jade版本1.8.2的问题。如果你将package.json中的依赖关系锁定到以前的版本(如下所示),这个问题就会消失。

{
  "name": "my-app",
  "dependencies": {
    "jade": "1.8.1"
  }
}

我已经提交了新的github issue,所以希望这会得到解决。

答案 1 :(得分:0)

我遇到了同样的问题,不幸的是我在找到任何关于此的文档时遇到了真正的问题

如果你愿意,我找到了一个我认为足够的替代方案:

从此处下载代码:http://swarminglogic.com/jotting/2014_02_watchfile 它是一个简单的文件监视器 别名代码或您喜欢的任何内容。

在右侧目录中运行watchfile test.jade jade ./ --out /tmp。每次文件更改时,这将通过watchfile运行jade编译。

解决方法我知道但它的工作原理...为什么人们总是认为你在运行节点服务时捆绑了所有内容?在搜索jade html TypeError: path must be a string时,我只会遇到 Express.js 主题