动态生成引用变量名称的字符串

时间:2019-04-08 11:39:58

标签: javascript

我正在使用replace-in-file查找所有对“旧/站点/的引用,并替换为File_Path。

File_Path是一个声明为全局的变量。

这是我的配置

with open(filename, 'rb') as fin:
    prolog = np.fromfile(fin, dtype=np.int32, count=15)

因此您可以看到'to'设置为“ FILE_PATH +”,从而得出结果

let FILE_PATH;

const replace = require('replace-in-file');

const options = {

    // file to update
    files: './output.js',

    // replacement to make (string or regex) 
    from: "old/site/",
    to: "FILE_PATH+",
};

// asynchronous replacement with promises:
replace(options)
    .then(changedFiles => {
        console.log('Modified files:', changedFiles.join(', '));
    })
    .catch(error => {
        console.error('Error occurred:', error);
    });

我要找的结果是

"FILE_PATH+childurl"

如何将变量的引用而不是变量名作为字符串传递?

编辑

我有一个名为output.js的脚本 我有一个update_script.js

output.js 包含以下代码行

FILE_PATH+"childurl

update_script.js 运行上面的代码,该代码查找对“ old / site /”的所有引用,并将其替换为“ FILE_PATH +”,因此新路径类似于

我想要的

e.exports=n.p+"old/site/logo.svg"

所以我的问题是如何在不将其作为字符串传递的情况下传递FILE_PATH。现在,当我通过“ FILE_PATH +”时,URL将更新为

我能得到的

e.exports=n.p+FILE_PATH+"/logo.svg"

1 个答案:

答案 0 :(得分:3)

您可以将回调值用于to。它的参数将是匹配的字符串:

const options = {
  files: './pgReactBuild/static/js/main.80e5f778.chunk.js',
  from: "old/site/",
  to: (childurl) => FILE_PATH + childurl,
};