У меня самая странная проблема и надеюсь, что кто-то еще это видел и может даже исправить.grunt.file.readJSON с одним элементом
Раньше у меня в файле grunt.js был набор параметров для использования в моих тестах транспортира. Простой пример ниже:
params: {
userId: "abc",
someData: ["abc"]
}
И это не сработало. Затем, когда мои данные росли, я чувствовал, что их экстернализация в другом файле будет лучше, поэтому я сделал и загрузил файл с помощью grunt.file.readJSON.
params: grunt.file.readJSON('my/external/file.json');
И содержимое файла:
{
"userId": "abc",
"someData": ["abc"]
}
Проверка на params.userId
отлично работает. Однако, если я проверю длину params.someData
, я получаю длину 3 вместо 1. Массив изменен. Однако, если я сделаю еще одно изменение для некоторых данных как таковых:
{
"userId": "abc",
"someData": ["abc", "def"]
}
Затем массив показывает два элемента, как ожидалось. Есть идеи? Как сохранить массив одиночных элементов со строкой?
Это нормально, когда я проверяю его. 'grunt.file.readJSON' просто делает' JSON.parse' содержимое содержимого файла, поэтому не должно быть что-то, связанное с разбором файлов. Does 'grunt.file.readJSON ('my/external/file.json')' возвращает вам плохие данные или он поврежден позже? –
Кроме того, вы используете 'grunt-protractor-runner'? –
Да, я использую хрюк-транспортир-бегун. Он отображается поврежденным, когда я запускаю тест транспортира. Если я добавлю 'console.log()' в загруженные данные, я вижу проблему. Странно, что была другая область, в которой у меня возникла проблема с вытаскиванием содержимого объекта: '{label:" a ", description:" abc "}' В транспортнике, когда я 'console.log'ed вне кода я бы получил массив, который всегда был бы равен '[object Object]'. Очевидно, я вижу, что происходит. Я просто не знаю, почему и как это исправить. – jonbcampos