在Node.js中使用path.join需要特定的模块

时间:2017-08-24 07:36:22

标签: node.js path backslash

我使用特定模板生成.js文件。 要求的模块的路径作为参数传递给模板。 在将它们传递给模板之前,使用path.join创建路径。

example:
var path = path.join(process.cwd(), 'location/to/module');
template(path);

in the template file:
var result = '/'use strict/';'
    result += 'var testcase = require(' + path + ')';

生成文件时,里面的路径需要如下所示:

require('D:\rootdirectory\directory\deleteCookies.test.js');

路径中的反斜杠导致问题。

任何人都可以帮助我,谢谢!!

1 个答案:

答案 0 :(得分:0)

通过使用jsesc模块转义反斜杠解决了这个问题。

var jsesc = require('jsesc');

result += 'var testcase = require(' + jsesc(path) + ')';

输出:

require('D:\\rootdirectory\\directory\\deleteCookies.test.js');