我有一個函數可以生成一個URL。我想在ng-href
之內使用它。這很好,直到我不得不將該方法移到$scope
之外。這不再起作用。在角度範圍外調用函數的正確方法是什麼?
請參見本plunker例如:
編輯新Plunker例如與評論:
https://plnkr.co/edit/z4txeXD1J2PJCfcBNw5C?p=preview
舊鏈接:
https://plnkr.co/edit/qb9w6A5nCNet2MCynnGH?p=preview
我可以得到它與一些黑客工作,比如將該方法放在根作用域中(如示例中那樣),但這實際上很笨拙。有沒有更好的方法將「導入」方法納入範圍?
你說的「我不得不搬到方法'$ scope'之外的意思這感覺就像一個XY問題,也不您的問題或你真的提供的鏈接的代碼說明你正在嘗試做的;他們會告訴你爲一個未確定的問題嘗試一些可能的「修復」,並且沒有任何修復方法是推薦的方法來處理角。 – Claies
你的plunk引用了一個script.js文件,你沒有包含在你的plunk中 – jbrown
@Claies hm ...抱歉,我不清楚 在plnkr鏈接中,'$ scope.getUrlInScope'曾經是我的方法,它的工作原理現在我想把這個方法移到控制器的外部(如我想要的將它移動到'getUrlGlobalScope')。我的第二個''標籤d證明一旦我將該函數移出,只需更改函數名稱(如預期的那樣),就不會再使用ng-href了。第三和第四'''是我發現的方法,但我覺得他們不理想,這就是我問這個問題的原因。 – user3759055