联系人管理器
ContactsManager
是联系人选择器 API的接口,它允许用户从其联系人列表中选择条目,并与网站或应用程序共享所选条目的有限详细信息。
ContactsManager
可以通过全局navigator.contacts
属性访问。
实例方法
示例
功能检测
以下代码检查是否支持联系人选择器 API。
js
const supported = "contacts" in navigator && "ContactsManager" in window;
检查支持的属性
以下异步函数使用getProperties
方法检查支持的属性。
js
async function checkProperties() {
const supportedProperties = await navigator.contacts.getProperties();
if (supportedProperties.includes("name")) {
// run code for name support
}
if (supportedProperties.includes("email")) {
// run code for email support
}
if (supportedProperties.includes("tel")) {
// run code for telephone number support
}
if (supportedProperties.includes("address")) {
// run code for address support
}
if (supportedProperties.includes("icon")) {
// run code for avatar support
}
}
选择联系人
以下示例设置了一个属性数组,用于检索每个联系人的属性,以及一个选项对象,以允许选择多个联系人。
然后定义一个异步函数,该函数使用select()
方法向用户呈现一个联系人选择器界面并处理选定的结果。
js
const props = ["name", "email", "tel", "address", "icon"];
const opts = { multiple: true };
async function getContacts() {
try {
const contacts = await navigator.contacts.select(props, opts);
handleResults(contacts);
} catch (ex) {
// Handle any errors here.
}
}
handleResults()
是开发者定义的函数。
规范
规范 |
---|
联系人选择器 API # contacts-manager |
浏览器兼容性
BCD 表仅在启用 JavaScript 的浏览器中加载。