javascript - instalar - Acceda a la dirección de correo electrónico del usuario en la aplicación Meteor JS
meteor js templates (3)
No especificas cómo estás autentificando a los usuarios. Por ejemplo, si estaba usando la autenticación de Google solamente, la dirección de correo electrónico se encontraría solo en
Meteor.user().services.google.email
Entonces, depende.
Estoy creando una aplicación con Meteor y necesito acceder a la dirección de correo electrónico almacenada de un usuario que ha iniciado sesión.
Actualmente estoy usando:
var userObj = Meteor.user();
console.log(userObj);
para acceder al usuario. Sin embargo, solo puedo acceder a la ID. La dirección de correo electrónico se almacena en un objeto anidado que se ve así:
[Object {address="[email protected]", verified=false}]
He intentado varias formas de atravesar el objeto JSON, pero no puedo averiguar cómo acceder al valor que necesito.
Prueba esto:
Meteor.user (). Emails [0] .address
Saludos,
Meteor.user().emails[0].address
funciona para mí.
Esto es lo que dice el doc:
Por defecto, el servidor publica nombre de usuario, correos electrónicos y perfil. Consulte Meteor.users para obtener más información sobre los campos utilizados en los documentos de usuario.
Ejemplo de documento de usuario:
{
_id: "bbca5d6a-2156-41c4-89da-0329e8c99a4f", // Meteor.userId()
username: "cool_kid_13", // unique name
emails: [
// each email address can only belong to one user.
{ address: "[email protected]", verified: true },
{ address: "[email protected]", verified: false }
],
createdAt: 1349761684042,
profile: {
// The profile is writable by the user by default.
name: "Joe Schmoe"
},
services: {
facebook: {
id: "709050", // facebook id
accessToken: "AAACCgdX7G2...AbV9AZDZD"
},
resume: {
loginTokens: [
{ token: "97e8c205-c7e4-47c9-9bea-8e2ccc0694cd",
when: 1349761684048 }
]
}
}
}