Optimal allocation of emergency resources is a crucial content of emergency management. It is a key step in emergency rescue and assistance. Multiple resources and potential secondary disasters are often neglected in the existing methods, which desperately need to be improved. In this paper, we formulate the emergency resource allocation problem with constraints of multiple resources and possible secondary disasters, and model the multiple resources and multiple emergency response depots problem considering multiple secondary disasters by an integer mathematical programming. For the complexity, a heuristic algorithm is designed to efficiently solve it based on linear programming and network optimization. The algorithm modifies the solutions of the linear programming by setting a priority of preference for each location where the secondary disasters will take place with certain possibilities. The numerical simulation provides evidence for its effectiveness and efficiency. Our method and algorithm can also be implemented in the practical applications with large-scale scenario.