Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/446.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使doc.id成为可点击项?_Javascript_Google Cloud Firestore_Processing - Fatal编程技术网

Javascript 如何使doc.id成为可点击项?

Javascript 如何使doc.id成为可点击项?,javascript,google-cloud-firestore,processing,Javascript,Google Cloud Firestore,Processing,如何将doc.id转换为可点击项目? 现在我可以从我的数据库中获取数据,我可以列出所有的doc.id,但是我想把它们做成超链接,当按下时,它会从数据库中获取数据,并在画布上以图形的形式显示数据。这有意义吗 doc.id是保存在我的firestore db中的东西的唯一id const allDrawings = document.querySelector('#allDrawings'); function renderDrawings(doc){ let li = document.

如何将doc.id转换为可点击项目? 现在我可以从我的数据库中获取数据,我可以列出所有的doc.id,但是我想把它们做成超链接,当按下时,它会从数据库中获取数据,并在画布上以图形的形式显示数据。这有意义吗

doc.id是保存在我的firestore db中的东西的唯一id

const allDrawings = document.querySelector('#allDrawings');

function renderDrawings(doc){
    let li = document.createElement('li');
    let key = document.createElement('doc.id');

    li.setAttribute('data-id', doc.id);
    key.textContent = doc.id;

    li.appendChild(key);

    allDrawings.appendChild(li);

}

db.collection('joonistused').get().then((snapshot) => {
    snapshot.docs.forEach(doc => {
        renderDrawings(doc);
        console.log(doc.id);
    })
})

我相信您需要的是在浏览器中列出firestore集合中的文档并使其列出项目的设计/逻辑。然后,您希望单击某个项目,并向用户显示该文档的内容。这将需要您端的编程逻辑。您需要编写在单击链接时调用的浏览器/客户端JavaScript(onclick)。当到达JavaScript代码时,您将需要对Firestore数据库进行web客户端调用,以检索相应的文档

见:

这看起来也很有用:


如果您只是想在DOM中创建一个锚,请尝试以下操作:

const anchor = document.createElement('a');
anchor.href = `/some/path/to/${doc.id}`;
anchor.innerText = `Document ID ${doc.id}`;

// <a href="/some/path/to/123">Document ID 123</a>
const-anchor=document.createElement('a');
anchor.href=`/some/path/to/${doc.id}`;
anchor.innerText=`documentid${doc.ID}`;
// 

URL应该是什么样子?你能分享一个例子吗?我的意思是,我希望每个doc.id都是可点击的,就像超链接一样?我明白了。我只是想知道URL的格式是什么;像
http://whatever.com/docs/id
或类似内容。我的示例显示了如何创建可单击的链接,您只需编辑带有URL格式的
href
,以及带有ID的
innerText
,如果这就是您想要显示的全部内容。示例:查看它的蓝色如何,我可以单击它?我希望所有这些都是这样的,路径就是他们的名字,基本上路径就是他们的URL链接,但是我怎么能自己把它路径呢?如果有道理的话?这就是令人困惑的地方是的,请充分理解您想要一个可点击的链接。如果您看看我的示例,您会看到
anchor.href=
这就是您定义URL的地方。我的示例显示了一个虚构的路径
/some/path/to/${doc.id}
,但您的路径可能是
https://mywebsite.com/docs/${doc.id}
。因此,您可以编辑该行,以放置您的URL结构。此注释扩展了其他答案的注释。。。我感觉到你正在将数据写入数据库。这是内部数据(不是HTML)。然后我感觉到你想要一个链接,当点击时,它会检索数据并。。。从数据来看。。。以某种方式呈现它。这是正确的吗?如果是这样的话,那么很可能您实际上不是指“URL链接”,它通常是一个锚定标记,当单击时,会导致浏览器加载不同的页面。我怀疑当你说链接时,你真的是指一个可点击的项目(问题)。