【发布时间】:2020-05-27 03:38:31
【问题描述】:
我正在尝试将来自我的 firebase 后端的数据呈现到我的网站上。我在 ../components/Storefront.js 中有一个函数
function Storefront(props) {
return (
<section>
<ul className="service-list"></ul>
</section>
}
在另一个文件 ../pages/storefront.js 中,我正在尝试将一个函数呈现给“服务列表”,
import Storefront from './../components/Storefront';
const servicelist = document.querySelector('.service-list');
function renderServices(doc){
let li = document.createElement('li');
let name = document.createElement('span');
let description = document.createElement('span');
li.setAttribute('data-id', doc.id);
name.textContent = doc.data().name;
description.textContent = doc.data().description;
li.appendChild(name);
li.appendChild(description);
servicelist.appendChild(li);
}
但是,我不断收到指向我的文档未定义错误
const servicelist = document.querySelector('.service-list');
我尝试过 ('#service-list') 没有帮助。这是因为 querySelector 不适用于 JSX 而只能用于 HTML?任何建议将不胜感激!
【问题讨论】:
-
我认为您的代码可能在加载 DOM 之前运行得太早。尝试在 DOM 加载后使用
window.onload调用函数。 -
我应该在函数 Storefront 的开头添加它吗?还是单独在 pages/storefront.js 中?
-
我添加了一个答案,因为在 cmets 中很难编写代码。