Edit:problema Manubrio l'aggiornamento Ember 1.9.1
Ho provato ad andare a un'altra pagina nella mia app, e mi liquidazione ottenere questo errore invece: Uncaught Error: Assertion Failed: TypeError: Cannot read property 'Mixin' of undefined
. L'ho tracciato a questa riga di codice: __exports__["default"] = DS.Model.extend(Ember.Validations.Mixin, {
, che utilizza le convalide di Ember. Sospetto che sia da lì che viene il problema. Qualcuno ha avuto problemi con Ember Validations durante l'aggiornamento di Handlebars?
Original post:
sto avendo qualche problema l'aggiornamento Ember a 1.9.1. In particolare, credo che non stia compilando i miei modelli in modo tale che sia compatibile con Handlebars 2.0. Ho capito che questo è un problema comune, ma l'unica soluzione che ha funzionato è stata l'utilizzo del canarino Ember piuttosto che 1.9.1. Dal momento che non è un'opzione, ho bisogno di trovare un modo per far funzionare correttamente Handlebars 2.0 con la mia app aggiornata.
Quando eseguo la mia applicazione, la mia console mostra l'errore: Uncaught Error: Unknown template object: function
a questa porzione di handlebars.js:
if (!templateSpec || !templateSpec.main) {
throw new Exception('Unknown template object: ' + typeof templateSpec);
}
ho aggiornato il mio applicazione prima di commutazione per Ember CLI 0.1.5 da 0.1.2 utilizzando these instructions nel sito CLI di Ember. Ho quindi provato ad aggiornare Ember alla versione 1.9.1 modificando prima la versione di Ember nel mio bower.js in 1.9.1, quindi seguendo these instructions nel sito ufficiale di Ember. Non ha funzionato, quindi ho provato ad usare il canarino Ember invece di 1.9.1, e questo ha funzionato bene.
Ecco il mio package.js:
{
"name": "appName",
"version": "0.0.0",
"private": true,
"directories": {
"doc": "doc",
"test": "tests"
},
"scripts": {
"start": "ember server",
"build": "ember build",
"test": "ember test"
},
"repository": "https://github.com/stefanpenner/ember-cli",
"engines": {
"node": ">= 0.10.0"
},
"author": "",
"license": "MIT",
"devDependencies": {
"body-parser": "^1.2.0",
"broccoli-asset-rev": "^2.0.0",
"broccoli-merge-trees": "^0.1.4",
"broccoli-sass": "^0.2.1",
"broccoli-static-compiler": "^0.1.4",
"ember-cli": "0.1.5",
"ember-cli-content-security-policy": "0.3.0",
"ember-cli-dependency-checker": "0.0.7",
"ember-cli-esnext": "0.1.1",
"ember-cli-htmlbars": "^0.6.0",
"ember-cli-ic-ajax": "0.1.1",
"ember-cli-inject-live-reload": "^1.3.0",
"ember-cli-qunit": "0.1.2",
"ember-cli-simple-auth": "^0.6.7",
"ember-cli-simple-auth-oauth2": "^0.6.7",
"ember-cli-spinkit": "0.0.1",
"ember-data": "1.0.0-beta.11",
"ember-export-application-global": "^1.0.0",
"express": "^4.8.5",
"glob": "^4.0.5"
}
}
Ecco il mio bower.js:
{
"name": "appName",
"dependencies": {
"handlebars": "2.0.0",
"jquery": "^1.11.1",
"ember": "1.9.1",
"ember-data": "1.0.0-beta.12",
"ember-resolver": "~0.1.11",
"loader.js": "stefanpenner/loader.js#1.0.1",
"ember-cli-shims": "stefanpenner/ember-cli-shims#0.0.3",
"ember-cli-test-loader": "rwjblue/ember-cli-test-loader#0.0.4",
"ember-load-initializers": "stefanpenner/ember-load-initializers#0.0.2",
"ember-qunit": "0.1.8",
"ember-qunit-notifications": "0.0.4",
"qunit": "~1.15.0",
"ember-simple-auth": "0.6.7",
"bootstrap-sass-official": "~3.3.1",
"ember-validations": "http://builds.dockyard.com.s3.amazonaws.com/ember-validations/ember-validations-latest.js"
}
}
Tutte le idee? Domande StackOverflow Potrei aver perso?
E 'possibile. Ho provato a seguire la guida che hai pubblicato e sto ancora ricevendo quell'errore. Ho eliminato entrambe le cartelle 'node_modules' e' bower_components', salvato il pacchetto htmlbars, aggiunto manubri 2.0 e ember 1.9.1 a bower.json, eseguito 'npm install' e' bower install', e ho ancora problemi. Forse ho una dipendenza che non è compatibile?O forse qualcosa nei miei modelli è deprecato. – NJP
Puoi provare con un nuovo progetto? Questo è quello che ho fatto e funziona. Se hai ember-cli 0.1.5, userà ember 1.8.1, manubri 1.3.0 e ember-data 1.00-beta12. Dopo puoi eseguire la migrazione con la guida che ho pubblicato. Domani eseguirò la migrazione con un progetto più grande. –
Altra cosa: non ho dovuto eseguire 'npm install' prima di 'bower install'. –