La raison pour laquelle cela ne fonctionnait pas était que j'utilisais une méthode de flèche. J'ai dû en faire une fonction normale :
userSchema.methods.setPassword = function (password) {
La raison en est que les fonctions fléchées traitent this
différemment des fonctions habituelles. Veuillez consulter ce qui suit pour plus de détails :
http://exploringjs.com/es6/ch_arrow-functions.html