Comment exporter un objet sans ses fonctions?ES6 comment exporter un objet sans ses fonctions
Un modèle utilisateur:
export default {
data: {},
sanitize (options) {
},
async insert (options) {
},
async find (options) {
},
async remove (options) {
}
}
utilisation
:
const result = await user.insert({ id: '123', name: 'haha xxxx', password: 'gskgsgjs' })
console.log(user)
Résultat:
{ data: { id: '123', name: 'haha', _id: 59a40e73f63b17036e5ce5c4 },
sanitize: [Function: sanitize],
insert: [Function: insert],
find: [Function: find],
remove: [Function: remove] }
Ce que je suis après:
{ data: { id: '123', name: 'haha', _id: 59a40e73f63b17036e5ce5c4 }
Des idées?
EDIT:
En utilisant la classe ES6:
export default class User {
constructor(options) {
this.data = this.sanitize(options)
}
sanitize (options) {
}
async insert (options) {
}
async find (options) {
}
async remove (options) {
}
}
Utilisation:
let User = new user()
// Inject a doc.
const result = await User.insert({ id: '123', name: 'haha xxxx', password: 'gskgsgjs' })
console.log(User)
Résultat:
User {
data: { id: '123', name: 'haha xxxx', _id: 59a4143e63f3450e2e0c4fe4 } }
encore, non exactement ce que je suis après:
{ data: { id: '123', name: 'haha', _id: 59a40e73f63b17036e5ce5c4 }
Qu'est-ce que 'insert'? Pourquoi exactement vous avez besoin de l'exporter quand vous l'avez déjà en tant que propriété 'user'? – estus
@estus désolé le résultat est réellement correct. j'ai mal compris. – laukok
Comment l'utilisateur est-il supposé appeler 'user.insert' si cette méthode n'est pas disponible sur l'objet? –