Не удается получить массив json в массив js при создании

Я знаю, что этот вопрос уже задавался несколько раз, и ответы, которые я нашел, следовали им, но безуспешно.

Резюме: Мне нужно получить массив из classes.json файла, а затем установить переменную classes из data() в этот json data.

Это файл class.json, из которого мне нужно загрузить массив.

[{
    "School1": {
      "classTag": ["F1", "E2G", "E2E", "E2A"]
    }
  },
  {
    "School2": {
      "classTag": ["10BFTE", "11BFTE"]
    }
  }
]

Вот методы, которые я пробовал:

created() {
  // Load json to classes
  $.getJSON('../assets/classes.json', function(json) {
    for (var key in json) {
      if (json.hasOwnProperty(key)) {
        var item = json[key];
        this.classes.push({
          classTag: item.classTag
        });
      }
    }
  });

}

created() {
  $.getJSON('../assets/classes.json', function(data) {
    this.classes = data;
  }).error(function() {
    console.info('error: json not loaded');
  });

}

И они, и другие дают мне эту ошибку: Сообщение об ошибке

Вам нужно добавить jQuery.

Jack Bashford 07.04.2019 23:22
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
1
65
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

похоже, вы пытаетесь вызвать метод jquery внутри своего vue-приложения, но jquery ($) не входит в ваш проект/область. попробуйте сделать это а) с включенным jquery (не рекомендуется, много наворотов только для одного вызова функции) или с простым js.

возможно, вы захотите изучить более легкую структуру для вызовов ajax, например аксиомы.

edit: или, как указано в комментарии, встроенный метод выборки современных браузеров.

Или встроенный fetch() API

charlietfl 07.04.2019 23:26

Другие вопросы по теме