Voila ce qu'on nous demande de faire. Il est bien noté que doivent être noté des " return". S'ils servent à rien, pourquoi sont ils demandés!?
Au regard de l'exercice ci-dessous je ne vois pas ou est mon erreur dans la construction de la méthode d'instance, tout comme la classe. Et pourtant ça ne fonctionne pas.
Bien cordialement
readBook(page)
permet à l'utilisateur de dire à quelle page il se trouve actuellement
si l'argument page est inférieur à un ou supérieur au nombre total de pages du livre, readBookretourne0
si l'argument page est supérieur ou égal à 1 et inférieur au nombre total de pages du livre, readBook modifie le champ currentPage de l'instance pour être égal à la valeur de l'argument passé, et retourne1
si l'argument page est égal au nombre total de pages du livre, readBook modifie le champ currentPage de l'instance pour être égal à la valeur de l'argument passé, modifie le champ read de l'instance en true, et retourne1
Je n'arrive pas a utiliser la console de code dans la leçon "apprendre le java script" est-ce normal? J'ai bien la dernière version de Firefox. Bien a vous.
Je suis actuellement à la fin du cour "Apprenez à coder avec JS" , et je rencontre un problème d’exécution avec mon programme.
En effet j'obtiens bien l'affichage de mon premier livre avec son nombre de page mais un bug apparait alors :
- Je ne peut pas faire défiler les livre de droite à gauche avec le carrousel , la page web reste figé sur le premier livre.
J'ai beau lire et relire mon code , je ne comprend pas d’où viens ce problème , si vous aviez la gentillesse de m’aiguiller sur la bonne voie que je continue mon apprentissage , je vous en serais fortement reconnaissant
Voici le code en question et merci par avance à tous pour avoir pris le temps de me lire et de me répondre.
export class Book {
constructor (title,author,description,pages,currentPage,read)
{
this.title = title;
this.author = author;
this.description = description;
this.pages = pages;
this.currentPage = currentPage;
this.read = read;
}
readBook(page)
{
if (page < 1 || page > this.pages)
{
return 0;
}
else if (page >= 1 && page < this.pages)
{
this.currentPage = page;
return 1;
}
else if (page === this.pages)
{
this.currentPage = page;
this.read = true;
return 1;
}
}
}
const silo1 = new Book("Silo", "Donnart Maël", "L'histoire du 1er silo, une nouvelle à ne pas manquer", 250, 1, false);
const silo2 = new Book("Silo2", "Donnart Cedric", "L'histoire du 2eme silo, une nouvelle à ne pas manquer", 300, 1, false);
const silo3 = new Book("Silo3", "Donnart Marine", "L'histoire du 3eme silo, une nouvelle à ne pas manquer", 350, 1, false);
export const books = [silo1,silo2,silo3];
- Edité par maeldonnart@hotmail.fr 26 mars 2020 à 22:58:18
Bonjour je suis complètement débutent en programation et j'ai un petit soucis avec le dernier exercice du cours JavaScript :l'alerte ne s'affiche pas sur mon navigateur et si quelqu'un peut m'aider pour la partie node
Voici l'énoncé :
Aidez à créer une application de suivi de livres pour les lecteurs !
Compétences évaluées
Écrire du code propre et facile à maintenir à l'aide de méthodes en JavaScript
Description
Comment compléter cette activité
Cette activité est une super opportunité pour mettre en pratique certains éléments importants de ce que vous avez appris pendant ce cours, et de voir comment ces éléments peuvent être utilisés dans une vraie application. Suivez les instructions dans le cadre bleu ci-dessous pour télécharger le code du projet et l'exécuter sur votre machine locale.
D'abord, vous aurez besoin d'installer Node, le runtime JavaScript. Ensuite, vous pouvez télécharger le code du projet ici. Décompressez le code dans un dossier. Ouvrez un terminal, naviguez vers le dossier du projet, et exécutez npm install . Une fois l'installation terminée, exécutez npm start pour démarrer le serveur de développement local. Votre navigateur devrait s'ouvrir automatiquement ; si ce n'est pas le cas, ouvrez votre navigateur et allez à http://localhost:8081. Vous pouvez maintenant commencer à ajouter du code au fichier Book.js . À chaque fois que vous enregistrez votre travail, le serveur de développement devrait s'actualiser automatiquement pour montrer vos modifications. Pour couper le serveur de développement, faites Ctrl+C (il vous faudra potentiellement le faire deux fois, selon votre système d'exploitation).
Votre mission, si vous l'acceptez
Suite à votre travail sur le site de streaming, on vous demande de créer une app appelée RestfulReading, qui permettra aux utilisateurs de suivre les livres qu'ils sont en train de lire/qu'ils ont lus.
Votre tâche est de créer la classe Book (Livre) et de peupler la base de données de développement de trois ou quatre livres pour vous assurer que l'interface fonctionne correctement (vous travaillerez avec le fichier Book.js ).
La classe Book doit contenir les champs suivants :
title - string - le titre du livre
author - string - l'auteur du livre
description - string - une description du livre
pages - number - le nombre total de pages
currentPage - number - la page où se trouve l'utilisateur actuellement (entre 1 et pages )
read - boolean - si l'utilisateur a lu ou non le livre (par défaut: false )
La classe Book doit aussi contenir la méthode instance suivante :
readBook(page)
permet à l'utilisateur de dire à quelle page il se trouve actuellement
si l'argument page est inférieur à un ou supérieur au nombre total de pages du livre, readBook retourne 0
si l'argument page est supérieur ou égal à 1 et inférieur au nombre total de pages du livre, readBook modifie le champ currentPage de l'instance pour être égal à la valeur de l'argument passé, et retourne 1
si l'argument page est égal au nombre total de pages du livre, readBook modifie le champ currentPage de l'instance pour être égal à la valeur de l'argument passé, modifie le champ read de l'instance en true , et retourne 1
Quand vous aurez créé la classe Book , vous en créerez au moins trois instances valables et vous les mettrez dans le tableau books qui est exporté par Book.js . Pour vérifier votre travail, actualisez le navigateur Codevolve intégré : vos instances Book devraient être visibles dans le carousel de l'interface RestfulReading.
Pour tester votre méthode instance readBook , suivez ces instructions pour trois livres (sans rafraîchir la page) :
mettez à jour la page actuelle avec une page valable qui est inférieure au nombre total de pages
mettez à jour la page actuelle avec exactement le nombre de pages total du livre (le livre devrait disparaître du carousel et apparaître dans la liste "Lus")
Quand vous aurez accompli ces tâches, votre navigateur devrait afficher une alerte qui contient un mot. Ce mot est la réponse à la seule question dans ce quiz !
Je suis actuellement à la fin du cour "Apprenez à coder avec JS" , et je rencontre un problème d’exécution avec mon programme.
En effet j'obtiens bien l'affichage de mon premier livre avec son nombre de page mais un bug apparait alors :
- Je ne peut pas faire défiler les livre de droite à gauche avec le carrousel , la page web reste figé sur le premier livre.
J'ai beau lire et relire mon code , je ne comprend pas d’où viens ce problème , si vous aviez la gentillesse de m’aiguiller sur la bonne voie que je continue mon apprentissage , je vous en serais fortement reconnaissant
Voici le code en question et merci par avance à tous pour avoir pris le temps de me lire et de me répondre.
export class Book {
constructor (title,author,description,pages,currentPage,read)
{
this.title = title;
this.author = author;
this.description = description;
this.pages = pages;
this.currentPage = currentPage;
this.read = read;
}
readBook(page)
{
if (page < 1 || page > this.pages)
{
return 0;
}
else if (page >= 1 && page < this.pages)
{
this.currentPage = page;
return 1;
}
else if (page === this.pages)
{
this.currentPage = page;
this.read = true;
return 1;
}
}
}
const silo1 = new Book("Silo", "Donnart Maël", "L'histoire du 1er silo, une nouvelle à ne pas manquer", 250, 1, false);
const silo2 = new Book("Silo2", "Donnart Cedric", "L'histoire du 2eme silo, une nouvelle à ne pas manquer", 300, 1, false);
const silo3 = new Book("Silo3", "Donnart Marine", "L'histoire du 3eme silo, une nouvelle à ne pas manquer", 350, 1, false);
export const books = [silo1,silo2,silo3];
- Edité par MaelDonnart il y a environ 19 heures
Problème réglé pour ma part , le code était bon , je n'avais juste pas actualisé 3 fois comme il le fallait.
votre forum est cassé je ne peux pas modifier mon précédent post du coup je renvoie en espérant cette fois-ci qu'on ne modérera pas sur la forme mais qu'on traitera le fond de ma question.
Le dernier exercice bug. je réalise les éléments tous passe dans la catégorie "lu" mais pas de fenêtre pour le mot qui conclut l'activité. De même, le carrousel ne fonctionne pas (est-ce normal?).
export class Book {
constructor(title, author, description, pages, currentPage, read=false){
this.title = title;
this.author = author;
this.description = description;
this.pages = pages;
this.currentPage = currentPage;
this.read = read;
}
readBook (page){
if (page <1 || page>this.pages){
return 0;
}
else if (page >=1 && page < this.pages){
this.currentPage = page;
return 1;
}
else if (page === this.pages){
this.currentPage = page;
this.read= true;
return 1;
}
}
}
const bookOne = new Book(
"Le Lion, la Sorcière blanche et l'Armoire magique",
"C. S. Lewis",
"fantaisie",
189,
0);
const bookTwo = new Book(
"Les Exploits de Fantômette",
"Georges Chaulet",
"policier/jeunesse",
150,
150);
const bookThree = new Book(
"gobelins",
"monsieur blabla",
"fantaisie",
500,
2);
export const books = [bookOne, bookTwo, bookThree];
j'ai vu que quelqu'un parlait de rafraîchir la page, cela ne fonctionne pas. Donc QUE FAIRE?? vu que je ne suis pas la seule à constater ce problème
Hello Audrey, J'ai eu le même problème, dans mon cas il m'a fallu faire 3 fois la modification suivante (pour chaque livre) : -changer le nombre de pages lues pour être < nombre de pages max puis valider -changer le nombre de pages lues pour être = nombre de pages max puis valider
Du coup avant cela, j'imagine qu'il faut changer dans le code le deuxième livre pour avoir un livre dont les pages lues < pages max.
Bon courage.
AudreyVV a écrit:
votre forum est cassé je ne peux pas modifier mon précédent post du coup je renvoie en espérant cette fois-ci qu'on ne modérera pas sur la forme mais qu'on traitera le fond de ma question.
Le dernier exercice bug. je réalise les éléments tous passe dans la catégorie "lu" mais pas de fenêtre pour le mot qui conclut l'activité. De même, le carrousel ne fonctionne pas (est-ce normal?).
export class Book {
constructor(title, author, description, pages, currentPage, read=false){
this.title = title;
this.author = author;
this.description = description;
this.pages = pages;
this.currentPage = currentPage;
this.read = read;
}
readBook (page){
if (page <1 || page>this.pages){
return 0;
}
else if (page >=1 && page < this.pages){
this.currentPage = page;
return 1;
}
else if (page === this.pages){
this.currentPage = page;
this.read= true;
return 1;
}
}
}
const bookOne = new Book(
"Le Lion, la Sorcière blanche et l'Armoire magique",
"C. S. Lewis",
"fantaisie",
189,
0);
const bookTwo = new Book(
"Les Exploits de Fantômette",
"Georges Chaulet",
"policier/jeunesse",
150,
150);
const bookThree = new Book(
"gobelins",
"monsieur blabla",
"fantaisie",
500,
2);
export const books = [bookOne, bookTwo, bookThree];
j'ai vu que quelqu'un parlait de rafraîchir la page, cela ne fonctionne pas. Donc QUE FAIRE?? vu que je ne suis pas la seule à constater ce problème
après avoir entré, comme indiqué, dans le fichier httpd.conf les lignes:
<IfModule mod_headers.c>
# Accept cross-domain requests
Header always set Access-Control-Allow-Origin "*"
</IfModule>
et décommenté la ligne LoadModule log_config_module modules/mod_log_config.so
et redémarré je ne sais combien de fois apache (voire mon pc), j'obtiens à chaque fois l'erreur suivante:
est ce que quelqu'un saurait ce qui ne va pas?
je suppose que c'est un problème d'autorisation pour les requêtes cross-domain mais ce problème était censé être résolu par les lignes entrées dans httpd.conf
Effectivement, ça marche... c'est un peu tordu mais bon
SebVP a écrit:
Hello Audrey, J'ai eu le même problème, dans mon cas il m'a fallu faire 3 fois la modification suivante (pour chaque livre) : -changer le nombre de pages lues pour être < nombre de pages max puis valider -changer le nombre de pages lues pour être = nombre de pages max puis valider
Du coup avant cela, j'imagine qu'il faut changer dans le code le deuxième livre pour avoir un livre dont les pages lues < pages max.
J'en suis à l'activité finale avec la class Book en installant node.js.
npm install et npm start ok après qques galères, la fenêtre s'ouvre, cependant rien ne s'affiche dans le navigateur avec le code ci-dessous et je ne trouve vraiment pas le souci.
J'en suis à l'activité finale avec la class Book en installant node.js.
npm install et npm start ok après qques galères, la fenêtre s'ouvre, cependant rien ne s'affiche dans le navigateur avec le code ci-dessous et je ne trouve vraiment pas le souci.
Je viens de finir l'exercice. Dans ton code, je vois aux primes abords 3 soucis par rapport à l'énoncé :
constructor (title, author, description, pages, currentPage, read) {
this.title = title;
this.author = author;
this.description = description;
this.pages = pages;
this.currentPage = 1; //on ne nous précise pas la valeur à indiquer lors de la déclaration de la classe (la valeur est à mon sens variable, donc il faut déclarer une variable.
this.read = false;
}
else if (page >= 1 && page < this.pages) {
this.currentPage = page;
this.read = true; //la variable ne doit pas changé d'état à cette étape, seulement à l'étape suivante
return 1;
}
const livre1 = new book ("La Vallée des Masques", "Tarun Tejpal", "Conte philosophique", 420, 420, true); // ici le true de fin doit être par défaut false d'après l'énoncé. Après avoir réalisé le projet, on se rend compte de l'importance de cette valeur par défaut. Sinon la méthode pour faire apparaître le mot clé de fin ne pourra pas marcher.. NB : je ne sais pas si c'est important pour le fonctionnement du programme mais pour faire appel à une classe c'est une majuscule dès le premier mot (ici Book) qu'il faut indiquer et non une minuscule (le fameux "camel case")
Et autre aide disponible, le fameux F12 sur ta page chrome qui te permet d'afficher le code de ta page et a un outil qui détecte les erreurs de ton programme. Cela m'a permis de trouver mes erreurs à moi.
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
slamani abdelazize