AngularJS 中的控制器不是函數錯誤:解決問題的綜合指南
使用AngularJS 時,您可能會遇到錯誤,指出控制器不是函數。當嘗試全域定義控制器時通常會發生此錯誤,這在 AngularJS 1.3 中不再允許。若要解決此問題,您必須使用 module.controller 語法明確註冊控制器。
解決方案1:使用module.controller 語法註冊控制器
定義控制器使用module.controller 語法,請依照下列步驟操作:
解決方案2:使用$inject 註釋和AngularJS 1.3.5
對於 AngularJS 1.3.5 及更高版本,您可以使用 $inject 註解來定義控制器的依賴項。此註釋應放置在控制器函數的頂部。
重新啟用全域控制器(可選)
AngularJS 1.3 強制執行嚴格的作用域,這禁止全域控制器聲明。但是,您可以透過在模組配置中使用allowedGlobals 選項來重新啟用全域控制器:
其他注意事項:
透過遵循這些解決方案,您將成功解決「控制器不是函數」錯誤在 AngularJS 中並有效地定義控制器。
以上是為什麼我的 AngularJS 控制器不是一個函數,我該如何修復它?的詳細內容。更多資訊請關注PHP中文網其他相關文章!