fix bug of 'listeners' of undefined