2013-04-10 85 views
1

我得到這個錯誤:灰燼抱怨未定義的命名空間

Uncaught Error: assertion failed: You are looking for a edit controller in the Node namespace, but the namespace could not be found 

但是如果我檢查的對象(Chrome開發者工具),我確認:

  • App.NodeEditController定義
  • Ember.TEMPLATES['node/edit']是(我正在使用預編譯模板)
  • 模型App.Node定義爲

什麼可能導致此問題?我還能驗證什麼?這是什麼namespace的事情?我以前沒有用過它,而且我的應用程序正在運行。

我所做的唯一更改與我的代碼庫重組有關:我已將模板/控制器/模型/視圖拆分爲文件 - 但它們與grunt任務再次連接,因此不應該存在實際更改(從事實APPART,我現在使用的預編譯模板)

我也驗證了SettingsApp.Router.router.recognizer.names

router names

+0

難道你帶下來到仍未一個小例子,和(如果你喜歡)張貼在像jsFiddle的地方?我懷疑真正的問題可能在代碼中的其他地方。 – emk 2013-04-10 13:46:17

+0

該錯誤讀取就好像EditController被定義爲Node.EditController或App.Node.EditController一樣。所以你需要展示更多的代碼,如果情況並非如此。 – mavilein 2013-04-10 13:58:27

+0

@gonvaled,你可以通過從你的應用程序啓動chrome開發工具來做App.Router.router.recognizer.names來驗證你的路由知道你的路由,希望它幫助 – intuitivepixel 2013-04-10 14:04:13

回答

1

這個問題解決了,至少可以導航到編輯路線再次

改變這一點:

SettingsApp.NodeController = Ember.ObjectController.extend({ 
    isEditing: false, 
    needs: [node/edit] 
    ... 

這個(刪除需求)

SettingsApp.NodeController = Ember.ObjectController.extend({ 
isEditing: false 
... 

希望它可以幫助...