[英]How can I resolve a TypeError using old version of ember and ember-light-table?
我在https://github.com/ericg-ember-questions/test_computed_sort有測試項目
我通過執行以下操作來設置項目:
節點版本:v12.18.1 (npm v6.14.5)
{{test-comp}}
Hello
{{#light-table}}
{{/light-table}}
如果我注釋掉對 light-table 的引用,則不會產生錯誤。 但是,有了它,我在控制台中看到:
media.js:15 Uncaught TypeError: decorator is not a function
at media.js:15:1
at Array.reduce (<anonymous>)
at _applyDecoratedDescriptor (media.js:15:1)
at Module.callback (media.js:240:1)
at Module.exports (loader.js:106:1)
at Module._reify (loader.js:143:1)
at Module.reify (loader.js:130:1)
at Module.exports (loader.js:104:1)
at requireModule (loader.js:27:1)
at Class._extractDefaultExport (index.js:432:1)
我可以做些什么來解決這個錯誤,以便我可以在這個項目中使用ember-light-table ?
該錯誤有點暗示這一點,但除非您使用現代 ember,否則它並沒有真正意義——但您使用的是 3.4(感謝提供該信息!!)
您的錯誤中的堆棧實際上非常有幫助,您可以通過以下方法找出問題所在。
我下載了你的復制回購(感謝提供!復制對調試非常有幫助!)
這里的關鍵部分是 media.js 參考。 點擊進入我們看到:
ember-responsive/services/media
文件的編譯版本正在使用裝飾器——您的應用程序中有某個版本的 ember-responsive 具有裝飾器。
我在您的 package.json 中看到您在榿木版本上指定:
"ember-responsive": "^4.0.2",
此 v4 版本的 ember-responsive 僅支持 ember 3.13 及更高版本。
有點在 ember 響應式 github、 https://github.com/freshbooks/ember-responsive/blob/v3.0.5/config/ember-try.js
我看到 v3 系列的 ember-responsive 支持回到 Ember 2.12——絕對是在支持之前的裝飾器之前。
因此,降級 ember-responsive 並重新啟動應用程序會顯示此錯誤:
"Assertion Failed: [ember-light-table] table must be an instance of Table"
此錯誤記錄在這里: https://github.com/adopted-ember-addons/ember-light-table/issues/726
所以它看起來像一些 API 使用問題。
如果您需要幫助解決這個問題,請隨時發布另一個問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.