thanks for your reply @jthoburn.
Definitely, this approach was too complex, so I made the chart component to insert an html tag, when no data was retrieved from the server.
didInsertElement: function() {
var _this = this;
Ember.RSVP.Promise.resolve(this.get('data')).then(function(data){
var parentDiv;
if (data) {
_this.setupChart(data);
} else {
parentDiv = $(_this.get('element')).parent();
parentDiv.append('<div class="no-chart-data">No Chart data</div>');
}
});
},