Этот код должен работать, но появляется сообщение об ошибке «Невозможно восстановить
const fs = require('fs');
let { remote: { app } } = require('electron');
let userDataPath = app.getPath('userData');
let filePath = path.join(userDataPath, 'preferences.json')
const readPreferences = () => {
return JSON.parse( fs.readFileSync(filePath) )
}
const writePreferences = (inputs) => {
inputs && fs.writeFileSync(filePath, JSON.stringify(inputs));
}
module.exports = {readPreferences, writePreferences };
Но если я добавлю все переменные let
внутри каждой функции, код сработает.
Это нормально? почему это происходит.
А стоит ли повторять это там?
Я попробовал это в отдельной демонстрации, и все отлично работает:
// - two.js
let two = "this is something"
exports.one = () => {
return two
}
// - index.js
const { one } = require('./two')
let two = "anything"
console.log(one()) // -> this is something
Редактировать: Хотя это работает
const fs = require('fs');
const readPreferences = () => {
let { remote: { app } } = require('electron');
let userDataPath = app.getPath('userData');
let filePath = path.join(userDataPath, 'preferences.json')
return JSON.parse( fs.readFileSync(filePath) )
}
const writePreferences = (inputs) => {
let { remote: { app } } = require('electron');
let userDataPath = app.getPath('userData');
let filePath = path.join(userDataPath, 'preferences.json')
inputs && fs.writeFileSync(filePath, JSON.stringify(inputs));
}
module.exports = {readPreferences, writePreferences };