loop untuk nilai Stylus

saya ingin ini

long_shadow()
    text-shadow: 1px 1px, 2px 2px, 3px 3px, 4px 4px, 5px 5px, ... ,Npx Npx

Saya sudah mencoba ini

calculate_shadow()
    $shadows = ''
    for i in 1..6
        $shadows += '%spx %spx, ' % (i i)
    $shadows += '0px 0px'

long_shadow()
    text-shadow: {calculate_shadow_base()}

Tapi ini akan mencetak semua prosedur penggabungan string

lalu ini

calculate_shadow()
    $shadows = ''
    for i in 1..6
        $shadows += '%spx %spx, ' % (i i)
    $shadows += '0px 0px'

long_shadow()
    text-shadow: calculate_shadow_base()

Ini akan mencetak

text-shadow: '1px 1px, 2px 2px, 3px 3px, 4px 4px, 5px 5px'

Bagaimana cara menghapus Kutipan?


person qdwang    schedule 12.08.2013    source sumber


Jawaban (1)


Hapus saja {} di sekitar pemanggilan fungsi Anda, itu untuk interpolasi :

calculate_shadow()
    $shadows = ''
    for i in 1..6
        $shadows += '%spx %spx, ' % (i i)
    $shadows + '0px 0px'

long_shadow()
    text-shadow: unquote(calculate_shadow())

body
    long_shadow()   
person Ven    schedule 13.08.2013
comment
Saya sudah mencoba ini, tetapi nilainya ditampilkan sebagai String. Ini akan dicetak sebagai bayangan teks: '1px 1px, 2px 2px'. Ini tidak akan berhasil sama sekali. Saya perlu menghapus QUOTE - person qdwang; 14.08.2013
comment
Coba panggil unquote() di atasnya. - person Ven; 14.08.2013