#node.js #heroku
#node.js #heroku
Вопрос:
Я хочу перезаписать файл nodemobules на Heroku, используя следующий скрипт npm.
Что я должен сделать, чтобы найти местоположение файла?
replaceScript.js
const data = "fixedcode";
fs.writeFile('LOCATION_PATH_OF_A_FILE_OF_HEROKU_NODE_MODULE', data, (err) =>
{console.log("soxError",err);
});
package.json
"scripts": {
"postinstall": "node replaceScript.js"
},
Ответ №1:
Вы можете использовать __dirname
, чтобы получить местоположение replaceScript
и оттуда перемещаться к node_modules
вложенному файлу и обратно. Например, если replaceScript
находится в том же каталоге, что и node_modules
:
// replaceScript.js
// The following test will pass when on Heroku:
if (process.env._ amp;amp; process.env._.includes('heroku')) {
const path = `${__dirname}/node_modules/some-package/index.js`;
require('fs').writeFileSync(path, data);
}