2013-08-29 50 views
4

嗨我想在我的AngularJS項目中實現Jade模板,並在我的模板(可重用代碼)中使用mixin。AngularJS中的Jade Mixins

但是我面臨的問題是我們不能使用Mixin和參數。我是否正確地做了這件事,或者在AngularJS中有沒有其他選擇可以替代我缺少的東西?

+0

我認爲沒有必要在angularjs項目中使用mixins。你能告訴我們你的代碼嗎?我們將盡力爲您尋找替代解決方案 – karaxuna

+0

感謝您的回覆。問題已經解決了。使用元素指令並傳遞到之前用mixin編寫的模板中。 – V31

回答

0

我發現mixins不能在Angular中使用,因爲範圍是要定義的。因此,現在創建了元素指令,並將其作爲templateUrl傳入模板中(該模板旨在用Mixin編寫)。

+0

你有沒有一個代碼片段,方便與雅代碼? – nikjohn

3

您可以從模型中創建一個JS對象,並把它作爲字符串的混入如下所示:

+avatarRow({name: '{{avatar.name}}', uuid: '{{avatar.uuid}}', verificationCode: '{{avatar.verificationCode}}', status: '{{avatar.status}}'}) 

您現在可以訪問例如在混入內部#{avatar.uuid}

我考慮到進一步的自動化,因爲這會導致模型代碼的重複,但這並不是很好。我會分享我的解決方案,如果我得到一個:)

+0

注意:在這個例子中,mixin必須期望接收一個名爲'avatar'的參數,它將包含傳遞給它的對象。 'mixin avatarRow(avatar)' –