Дублирование устаревшего кода: получение ошибки innerHTML - PullRequest
0 голосов
/ 10 мая 2019

Попытка завершить базовую программу из курса JS для отображения массива информации о пользователе, и я получаю ошибку 'Uncaught TypeError: Невозможно прочитать свойство' innerHTML 'из неопределенного' ...

I 'm соответствует среде курса (Узел v6.17.1, npm v3.10.10.).Я вижу две проблемы, но не уверен, что они связаны:

(1) При дублировании кода инструктора редактор не разрешит мне объявить «global.document» (см. Полную строку кода ниже)

(2) Сообщение об ошибке указывает на index.test.js со следующей информацией:

Uncaught TypeError: Cannot read property 'innerHTML' of undefined
      at Object.done (C:/Users/Chris/js-dev-env/src/index.test.js:16:17)
      at node_modules\jsdom\lib\jsdom.js:320:18
      at processTicksAndRejections (internal/process/task_queues.js:82:9)

Вот код из index.js, который я пытался напечатать, но редактор не будетпозвольте мне объявить свойство global.document (может быть, это более старый синтаксис?)

  global.document.getElementById('users').innerHTML = usersBody;

...

describe('index.html', () => {
  it('should have h1 that displays Users', (done) => {
    const index = fs.readFileSync('./src/index.html', "utf-8");
    jsdom.env(index, function(err, window) {
      const h1 = window.document.getElementsByTagName('h1')[0];
      expect(h1.innerHTML).to.equal("users");
      done();
      window.close();
    });
 });
})

Ожидается отображение 3 строк пользовательской информации (fName, lName,Эл. адрес).Не удается обойти ошибку .innerHTML.

...