解:过点$B$作$BF⊥AD,$垂足为点$F$
由题意得,$AB=30\ \mathrm {km},$$BC=10\ \mathrm {km}$
在$Rt△BFA$中,$BF=AB×sin 58°=30×0.85≈25.5\ \mathrm {km},$
$AF=AB×cos 58°=30×0.53≈15.9\ \mathrm {km}$
∴$CF=BF+BC=35.5\ \mathrm {km}$
在$Rt△CFD$中,$DF=\frac {CF}{tan 37°}≈47.3\ \mathrm {km}$
∴$AD=DF-AF≈31\ \mathrm {km}$
∴这时,$D$处距离港口$A$有$31$千米