enb / enb-bem-techs

ENB package to build BEM-projects
Other
22 stars 22 forks source link

deps: order bug #203

Open blond opened 8 years ago

blond commented 8 years ago

Воспроизвести можно тут.

Описание

block.deps.js:

({
    mustDeps: [{ mods: { mod1: 'val' } }]
})

pages/page/page.bemdecl.js:

exports.blocks = [
    { 
        "name": "block", 
        "mods": [
            { 
                "name": "mod2", 
                "vals": [{ "name": "val" }] 
            }
        ] 
    }
]

pages/page/page.deps.js:

exports.deps = [
    {
        "block": "block"
        "mod": "mod1"
    },
    {
        "block": "block"
        "mod": "mod2"
    },
    {
        "block": "block"
        "mod": "mod2"
        "val": "val"
    },
    {
        "block": "block"
        "mod": "mod1"
        "val": "val"
    },
    {
         "block": "block"
    }
]

В собранном файле с депсами модификатор блока mod2 приехал раньше этого блока, хотя мы этого не просили.

Т.е. ожидаем:

exports.deps = [
    {
        "block": "block"
        "mod": "mod1"
    },
    {
        "block": "block"
        "mod": "mod1"
        "val": "val"
    },
    {
         "block": "block"
    },
    {
        "block": "block"
        "mod": "mod2"
    },
    {
        "block": "block"
        "mod": "mod2"
        "val": "val"
    }
]
qfox commented 7 years ago

Are you ready to born the solution? 9 months past since the talk. You must born something! image

qfox commented 7 years ago

Смешной баг, кстати. И с элементами тоже работает (баг).