Comment formater la chaîne ng-model à ce jour pour le datpicker matériel angulaire
J'ai un mangouste connexion à une base de données contenant la Date d'objets dans une collection. Je veux voir ces Date d'objets à l'aide Angulaire du Matériau DatePicker
de contrôle. L'objet Date, suivez les ISO format de la chaîne de.
Voici un extrait de code:
<md-datepicker
ng-model="license.expirationdate" md-placeholder="Enter date">
</md-datepicker>
J'obtiens l'erreur suivante:
La ng-model
pour md-datepicker
doit être une instance de Date.
Lors de mes recherches, j'ai trouvé que vous pouvez utiliser des filtres pour créer une instance de Date mais cela ne fonctionne pas pour moi -> j'ai un message d'erreur disant que la valeur de modèle est non cessible lors de l'utilisation d'un simple filtre. Le filtre simplement renvoyé un nouvel objet Date basée sur la chaîne d'entrée.
Comment puis-je formater les chaînes à la Date d'objets tout en conservant ng-model
changements?
EDIT: schéma de la mangouste
var Schéma = mangouste.Schéma;
var Schema = mongoose.Schema;
var modelschema = new Schema({
name : String,
licensetype : String,
activationcount : Number,
expirationdate: Date,
key : String
})
voici l'express de routage qui remplit le schéma
app.post('/licenses', function (req, res) {
console.log(req.body.expirationDate);
License.create({
name: req.body.licenseName,
licensetype: req.body.licenseType,
activationcount: 0,
expirationdate: req.body.expirationDate,
key: "123456"
}, function (err, license) {
if (err) {
res.send(err);
console.log(err);
}
//Send user back to main page
res.writeHead(301, {
'Location': '/',
'Content-Type': 'text/plain'
});
res.end();
}
)
});
source d'informationauteur WJM
Vous devez vous connecter pour publier un commentaire.
Voici un exemple:
Balisage:
JavaScript:
Violon: http://jsfiddle.net/masa671/jm6y12un/
Mise à JOUR:
Avec
ng-repeat
:Balisage:
JavaScript:
Violon: http://jsfiddle.net/masa671/bmqpyu8g/
Vous pouvez utiliser ng-init, un filtre personnalisé, et ng-changer et accomplir ceci dans le balisage.
JavaScript:
HTML:
Avec cette approche, vous n'avez pas besoin d'encombrer votre Contrôleur de code avec Vue logique. L'inconvénient est que tous les changements dans le programme de licence.expirationdate dans le Contrôleur ne sera pas reflété dans l'Affichage automatiquement.
http://jsfiddle.net/katfby9L/1/
Cela va automatiquement convertir toutes les chaînes d'un serveur de réponses JSON à la date
Je voudrais faire comme ceci:
Html:
Dans votre contrôleur
J'ai dû faire une date par défaut de 6 mois à partir de la journée de retour...
Après de longues expériences avec la date de conversion de format ISO et à l'arrière, j'ai créé une solution simple que je n'ai pas trouvé ici.
L'idée générale: Prenez le temps aujourd'hui et ajouter /soustraire le temps en millisecondes avant la date requise.
html:
contrôleur:
résultat:
Il sera peut-être utile pour quelqu'un...
J'ai créé un custom directive de gérer cela pour moi. J'ai utilisé la classe Date de Sugarjs.com pour travailler comme je l'ai mis en œuvre. Cette méthode assure la date de toujours affiché comme une date et ne saute pas partout avec décalage UTC impliqués. Vous pouvez modifier le formateur à
return new Date(input)
si vous ne voulez pas vous limiter à l'UTC.Vous ensuite l'utiliser dans votre balisage HTML comme