solid/react-components: 使用 LDflex() 作为地址
solid/react-components: useLDflex() for address
我正在尝试使用 useLDflex()
或 useLDflexValue()
.
从他们的个人资料中读取用户的地址
当我运行这个:
const address = useLDflex(`[${webId}].vcard_hasAddress`)?.toString() || 'loading...';
console.log('address: ', address);
控制台显示:
address: https://<username>.solidcommunity.net/profile/card#id1234567890,false,
我可以在浏览器中转到 URL 并显示地址对象,但如何在我的代码中直接访问地址对象的内容?我假设有一个函数可以解析地址 URL 和 return 的内容,但找不到它。
谢谢。任何有关此主题的阅读 material 的链接也将不胜感激。
Solid Profile 的 vcard:hasAddress
谓词指向一个地址资源,该资源随后具有 vcard:country-name
和 vcard:locality
等更多属性。
借助 ldflex,您可以使用点符号来“链接”您的查询。所以这将为您提供地址位置:
[${webId}].vcard_hasAddress.vcard_locality
除了点符号,您还可以使用方括号访问属性。这也适用于包含破折号的属性,例如 country-name:
[${webId}].vcard_hasAddress['vcard:country-name']
试一试on the LDFlex playground with my WebID。
如果地址存储在不同的文档中,您需要先查询地址,然后再查询地址属性:
1. [${webId}].vcard_hasAddress
2. [${address}].vcard_locality
我正在尝试使用 useLDflex()
或 useLDflexValue()
.
当我运行这个:
const address = useLDflex(`[${webId}].vcard_hasAddress`)?.toString() || 'loading...';
console.log('address: ', address);
控制台显示:
address: https://<username>.solidcommunity.net/profile/card#id1234567890,false,
我可以在浏览器中转到 URL 并显示地址对象,但如何在我的代码中直接访问地址对象的内容?我假设有一个函数可以解析地址 URL 和 return 的内容,但找不到它。
谢谢。任何有关此主题的阅读 material 的链接也将不胜感激。
Solid Profile 的 vcard:hasAddress
谓词指向一个地址资源,该资源随后具有 vcard:country-name
和 vcard:locality
等更多属性。
借助 ldflex,您可以使用点符号来“链接”您的查询。所以这将为您提供地址位置:
[${webId}].vcard_hasAddress.vcard_locality
除了点符号,您还可以使用方括号访问属性。这也适用于包含破折号的属性,例如 country-name:
[${webId}].vcard_hasAddress['vcard:country-name']
试一试on the LDFlex playground with my WebID。
如果地址存储在不同的文档中,您需要先查询地址,然后再查询地址属性:
1. [${webId}].vcard_hasAddress
2. [${address}].vcard_locality