2014-01-15 39 views
0

我想創建一個混合,它將通過合併其參數來返回名稱空間變量的值。LESS合併變量名稱並獲取值

瞧:

@namespace_thing: "some value"; 
@namespace_otherthing: "some other value"; 

@othernamespace_thing: "another value"; 
@othernamespace_otherthing: "again other value"; 

的混入:

.monster(@namespace,@var){ 
@tmp: ~"@{namespace}"+"_"[email protected]{var}; 

content: @tmp // That's what I just dont know. 

} 

#TESTSELECTOR{ 

.monster(namespace,thing); // would return 

    content: "some value"; 

} 

回答

2

要做到這一點,最簡單的方法是使用variable name references

@namespace_thing: "some value"; 

.monster(@namespace, @var) { 
    @ref: '@{namespace}[email protected]{var}'; 
    content: @@ref; 
} 

usage { 
    .monster(namespace, thing); 
} 

另見mixins as functions,如果你需要返回一個值,而不是將其分配給預定義的屬性。

+0

Thanks @ seven-phases-max!這就是我一直在尋找的:) –