Как получить доступ к значению из другого файла с помощью операции чтения файла - PullRequest
0 голосов
/ 08 мая 2018

Есть два файла.

  1. Мастер-файл (имя файла => транзакция.js)
  2. Файл замедления объекта (имя файла => checkin.txt)

2 . Файл замедления объекта (checkin.txt)

    {cronCondition: true,startDate:""} 

1. Основной файл (имя файла => транзакция.js)

fs.readFile((__dirname + "/ checkin.txt"), 'utf8', function (err, data) {
     if (err) {
         console.log(err);
         process.exit(0);
     }else{
        console.log(data);
        process.exit();
     }
 })

Когда я console.log значение данных, он возвращает {cronCondition: true, startDate: ""} . Это нормально для меня, но я хочу получить доступ только к значению cronCondition . Для этого я попробовал консоль data.cronCondition . Возвращает undefined .

Как получить доступ к значению cronCondition ?

Ответы [ 2 ]

0 голосов
/ 08 мая 2018

Первое изменение формата второго файла в формате json

2. Файл замедления объекта (checkin.json)

{"cronCondition":false,"startDate":"2018-02-07T18:30:00.000Z"}

1. Основной файл (имя файла => транзакция.js)

var cronValue = require ('./ checkin.json');

console.log("cronData==>", cronValue.cronCondition)

Я думаю, что нет необходимости читать операции с файлами.

0 голосов
/ 08 мая 2018

Ваш исходный файл cronDate.txt содержит JSON, который технически недопустим, поэтому вам нужно будет использовать библиотеку, которая анализирует JSON с «расслабленными» правилами (например, JSON без кавычек, JSON с одинарными кавычками, разрывы строк и т. Д.) , JSON5 - это библиотека, которая может сделать это.

Установка:

npm install json5
const JSON5 = require('json5')

Usage:

fs.readFile((__dirname + "/cronDate.txt"), 'utf8', function (err, data) {
  if (err) {
     console.log(err);
     process.exit(0);
  } else {
    var test = JSON5.parse(data);
    console.log(test);
    process.exit();
  }
})

Также я заметил небольшое противоречие в вашем вопросе. В верхней части вашего вопроса указано, что ваш исходный файл checkin.txt, а файл, из которого вы на самом деле читаете, - cronDate.txt. Вы хотите убедиться, что вы читаете из правильного файла. Редактировать: Похоже, вы исправили свой первоначальный вопрос.

...