我只想尝试html-snapshots。这应该很简单,对吧?
这就是我的开始:
npm install html-snapshots
这就是我所需要的,对吧?这是我的snapshots.js文件:
var htmlSnapshots = require('html-snapshots');
htmlSnapshots.run({
source: "sitemap.xml",
hostname: "localhost",
outputDir: "snapshots",
outputDirClean: true,
selector: "#results-widget"
});
并运行它:
node snapshots.js
但是没有:
module.js:340
throw err;
^
Error: Cannot find module '.\robots'
at Function.Module._resolveFilename (module.js:338:15)
at Function.Module._load (module.js:280:25)
at Module.require (module.js:364:17)
at require (module.js:380:17)
at Object.module.exports.create (C:\webdev\node_modules\html-snapshots\lib\input-generators\index.js:38:16)
at Object.module.exports.run (C:\webdev\node_modules\html-snapshots\lib\html-snapshots.js:42:39)
at Object.<anonymous> (C:\webdev\snapshots.js:2:15)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
跆拳道?
这是html-snapshots.js的一部分:
var inputFactory = require("./input-generators");
...
run: function(options, listener) {
...
var inputGenerator = inputFactory.create(options.input);
...
result = inputGenerator.run(options, (function(options, notifier){
此外,html-snapshots\lib\input-generators
文件夹包含文件robots.js
答案 0 :(得分:1)
它看起来像html-snapshots\lib\input-generators\index.js
文件中的问题 - 它在Linux系统上运行正常但在Windows上失败(path.sep
已用于构建模块名称)
问题是它应该加载'./robots'
模块而不是'.\robots'
。
快速修复是更新html-snapshots\lib\input-generators\index.js
档案 - 第38行。
更改行:
result = require(file);
于:
result = require(path.join(__dirname, file));
它会正常工作。我希望这会有所帮助。