Fatti : A.- Mediante decisione 27 luglio 1998 la Cassa di compensazione del Cantone Ticino ha respinto una richiesta inoltrata da P._, cittadino italiano nato nel 1924, intesa ad ottenere l'assegnazione di una prestazione complementare alla rendita AVS. Secondo l'amministrazione, i redditi determinanti del richiedente (indicati in fr. 26'877. - annui) superavano il fabbisogno riconosciuto (fissato in fr. 26'199. - annui), per cui il diritto a una prestazione doveva essere negato. B.- L'interessato è insorto contro il provvedimento al Tribunale delle assicurazioni del Cantone Ticino, contestando il calcolo del reddito effettuato dalla Cassa di compensazione e asseverando in particolare che la pensione italiana da lui percepita doveva essere conteggiata al netto (fr. 20'016. - annui) e non al lordo (fr. 25'749. - annui), in quanto già tassata alla fonte dall'autorità fiscale italiana. Con giudizio 21 gennaio 1999 l'adita istanza ha accolto il gravame e annullato il provvedimento impugnato, rinviando gli atti alla Cassa per nuovo calcolo della prestazione sulla base della rendita di pensione netta. C.- La Cassa interpone un ricorso di diritto amministrativo al Tribunale federale delle assicurazioni chiedendo l'annullamento della pronunzia querelata. Dei motivi si dirà, per quanto occorra, nei considerandi che seguono. P._ ha rinunciato a determinarsi, mentre l'Ufficio federale delle assicurazioni sociali chiede l'accoglimento del gravame.