Movatterモバイル変換


[0]ホーム

URL:


  1. Web
  2. Les API Web
  3. IDBObjectStore
  4. IDBObjectStore.createIndex()

Cette page a été traduite à partir de l'anglais par la communauté.Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.

View in EnglishAlways switch to English

IDBObjectStore.createIndex()

Baseline Widely available

Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis ⁨juillet 2015⁩.

La méthodecreateIndex() de l'interfaceIDBObjectStore met en place sur le magasin d'objetrelié un nouvel index et en renvoie l'accès.

Note :Cette méthode ne peut être appelé que si la transaction de l'accès au magasin d'objet est en mode VersionChange.

Note : Cette fonctionnalité est disponible via lesWeb Workers.

Syntaxe

js
objectStore.createIndex(nomIndex, nomCle, parametresIndexOptionnel);

Paramètres

nomIndex

Le nom de l'index que l'on veut ajouter. Il est possible d'ajouter un index avec un nom vide.

nomCle

Le nom de clé qu'utilise l'index. Il est possible d'ajouter un index sans nom de clé.

parametresIndexOptionnelFacultatif

Un objet optionnel pouvant inclure une ou plusieurs des propriétés suivantes:

PropriétéDescription
uniqueSi true, l'index empêcheras la duplication d'une clé.
multiEntry Si true, l'index ajoutera une entrée pour chaque élément de tableau quand le nom de clé de clé est résolue. Si false, il ajoutera un seule entrée contenant le tableau.
locale

Actuellement uniquement dans Firefox 43+ , cela vous permet de spécifier des paramètres de localisation pour l'index. Toutes les opérations de tri effectuées sur les données via des intervalle de clé obéirons aux règles locales de tri (voirtrie dans localisation courante, en). Vous pouvez spécifier sa valeur de trois façons différentes:

  • string: une chaîne de caractère contenant le code de la localisation , par exemple 'fr' ou'en-US'.
  • auto: La localisation par défaut est utilisé (peut être régler par l'utilisateur).
  • null or undefined: Les règles de tri par défaut de javaScript seront utilisées.

Renvoie

L'accès au nouvel index.

Exceptions

InvalidStateError

Cetteexeption si latransaction dont dépend cetaccès au magasin d'objet n'est pas enmodeversionchange.

TransactionInactiveError

Cetteexeption si latransaction de l'accès au magasin d'objet est inactive.bug 1176165 ).

ConstraintError

Cetteexeption si un index avec le même nom (case sensible) existe déjà sur le magasin d'objet.

Exemple

Dans l'exemple suivant on peut voir le gestionnaire d'événementonupgradeneeded être utilisé pour mètre à jour la structure de la base de donnée quand un numéro de version supérieur est chargé.

Des méthodecreateIndex() sont utilisées pour mètre en place différents index sur le magasin d'objettoDoList.

js
var db;// Requête d'ouverture de la base de données "toDoList"var DBOpenRequest = window.indexedDB.open("toDoList", 4);// Gère l'échec de l'ouverture de la baseDBOpenRequest.onerror = function (event) {  note.innerHTML += "<li>La base de donnée n'as pas peut être ouverte.</li>";};// Gère le succès de l'ouverture de la baseDBOpenRequest.onsuccess = function (event) {  note.innerHTML += "<li>La base de données est ouverte.</li>";  //La connexion est affcté à la variable db.  db = request.result;  // Exécute une fonction d'affichage displayData()  displayData();};// Ce gestionnaire d'événement nécessite un nouveau numéro de version de la basse de données.// Si la base n'existe pas un nouveau numéro de version est généré par la méthode d'ouverture de connexion window.indexDB.open .DBOpenRequest.onupgradeneeded = function (event) {  var db = event.target.result;  db.onerror = function (event) {    note.innerHTML += "<li>Erreur de chargement de la base de données.</li>";  };  // L'Accès au magasin d'objet "toDoList" de la base de donnée  var objectStore = db.createObjectStore("toDoList", { keyPath: "taskTitle" });  // Met en place les index du magasin d'objet  objectStore.createIndex("heures", "hours", { unique: false });  objectStore.createIndex("minutes", "minutes", { unique: false });  objectStore.createIndex("jour", "day", { unique: false });  objectStore.createIndex("mois", "month", { unique: false });  objectStore.createIndex("annee", "year", { unique: false });  objectStore.createIndex("notifiee", "notified", { unique: false });};

Note :Pour un exemple de travail complet, voir notreTo-do Notifications app (view example live).

Spécifications

Specification
Indexed Database API 3.0
# ref-for-dom-idbobjectstore-createindex①

Compatibilité des navigateurs

Voir aussi

Help improve MDN

Learn how to contribute

Cette page a été modifiée le par lescontributeurs du MDN.


[8]ページ先頭

©2009-2025 Movatter.jp