For me, it came down to convenience. The TXB series is great if you have lots of of signal lines at one voltage being shifted to a different one - add a single TXB and you're done. Very clean board layouts can result and space savings are possible for any layout with more than 4 lines.
The BSS138 approach works great for single lines or when you don't mind the complexity that having three chips (BSS138 and two resistors) adds for each signal line. It's also great if you have lots of voltages to contend with - 1.8V, 3.3V, 4.2V, etc.
Where the TXB chips won't work is for I2C signal lines. They need a different translator, the TXS01xx series.