我目前正在開發一個使用Cordova 3.4.0 Requirejs和Backbone的單頁面應用程序。將應用程序從iPhone移植到iPad時,我需要在某些視圖中更改某些功能,並保持其他部分不變。如何讓requirejs以多態方式加載模塊?
爲了保持最小變化,我的解決方案是爲每個需要更改的視圖創建新對象,從原始視圖繼承所有屬性並僅覆蓋必要的功能。
要做到這一點,我需要配置Requirejs這樣在iPad上,如果我需要,例如,「用戶/查看/編輯profile.js」,它會檢查是否有一個'用戶/ ipad/view/edit-profile.js'文件,如果有的話,需要它,否則需要'user/view/edit-profile.js'。
我試過i18n,但是這種情況並不正確。我想出了一個爲requirejs創建新插件來完成任務的想法。
有沒有人對我的問題有任何建議?
btw,由於所需文件根據平臺動態變化。我稱之爲多態。
感謝您的幫助。然而,我的背景是我們已經完成了我們的iPhone應用程序,這是一個巨大的項目,並且經過了仔細的測試,所以我們不想觸摸當前運行良好的iPhone應用程序的源代碼。它使我們不能使用你的第二個建議。 在您的第一個建議中,我們必須搜索所有必需的模塊,並在config文件中將其路徑與適當的回退一起設置。這會增加更多模塊的複雜性。 –