We’ve all known people like this, I suspect, and you’re right—it’s hard to be around them or keep them from getting under our skin. I hope, however, that you won’t allow her attitude to poison your own soul (which can happen).
I don’t know why some people are like this (even when they seemingly have little to complain about). Perhaps they are just seeking attention; perhaps they are inwardly angry or unhappy for some reason, and think life has treated them badly; perhaps tearing others down makes them feel superior to everyone else. Jealousy, anger and pride can be very destructive emotions, hurting both us and those around us.
But whatever the reason, it’s wrong for her to constantly criticize others and react negatively to everything that happens. God wants us to help others through what we say, not tear them down or alienate them. The Bible says, “Speak… judgments that are true and make for peace; do not devise evil in your hearts against one another” (Zechariah 8:16-17, ESV). It also warns, “It is a sin to despise one’s neighbor” (Proverbs 14:21).
Instead of rejecting this person, ask God to help you begin to see her through His eyes of love and compassion. Then pray for her, and ask God to give you an opportunity to be a friend to her and share Christ’s love with her. God loves her in spite of her attitude, and Christ wants to come into her life and make her a new person.