Disattivazione delle estensioni del prototipo e specifica del tipo di URL

Le estensioni del prototipo possono essere disabilitate impostando il flag EXTEND_PROTOTYPES su false. Apri il file config / environment.js e imposta il flag nell'oggetto ENV -

ENV = {
   EmberENV: {
      EXTEND_PROTOTYPES: false
   }
}

I prototipi di oggetti JavaScript possono essere estesi da Ember.js nei seguenti modi:

  • Array- Viene utilizzato per implementare le interfacce Ember.Enumerable, Ember.MutableEnumerable, Ember.MutableArray e Ember.Array .

  • String- Aggiunge alcuni metodi di supporto delle stringhe come camelize () (specifica la forma lowerCamelCase), w () (divide la stringa in unità separate), ecc.

  • Function- Viene utilizzato per spiegare le funzioni come proprietà calcolate utilizzando il metodo property () .

Le estensioni prototipo di cui sopra possono essere utilizzate nel file di configurazione dell'applicazione come mostrato di seguito:

ENV = {
   EmberENV: {
      EXTEND_PROTOTYPES: {
         String: false,
         Array: true
      }
   }
}

Specifica del tipo di URL

Il tipo di URL dell'applicazione può essere specificato utilizzando le quattro opzioni del router Ember:

  • history
  • hash
  • none
  • auto

Storia

Questa opzione utilizza l'API del browser HTML5 per creare gli URL. Ad esempio, crea un router chiamato myroute1 sotto un altro router myroute che navigherà verso il percorso myroute.myroute1 .

Router.map(function() {
   this.route('myroute', function() {
      this.route('myroute1');
   });
});

Il codice precedente viene creato nel file app / router.js per definire le mappature URL che accettano il parametro come oggetto per creare il percorso.

Hash

Questa opzione specifica lo stato iniziale di un'applicazione utilizzando l'URL basato sull'ancoraggio che verrà sincronizzato mentre ci spostiamo. Ad esempio, il percorso di rotta precedente / # / myroute / myroute1 navigherà verso il percorso myroute.myroute1 .

Nessuna

Questa opzione non aggiorna l'URL e imposta il flag ENV.locationType su nessuno per disabilitare l'API di posizione che non consente all'URL del browser di interagire con l'applicazione.