fix bug: item will be override when item has the same name.