In this idiom, a new verb is formed by combining a noun and the verb आना. Grammatically, it behaves like a compound verb. It is not technically a compound verb, since compound verbs are made from two verbs, not a noun and a verb. It is not an indirect verb construction either, since the subject remains in the direct case. Thus, it is a unique idiom.
Consider a few examples:
The verb नज़र आना is similar to दिखना, i.e. “to appear”, “to be visible”, “to be seen”, “to show”, etc.
The verb काम आना is similar to उपयोगी होना, i.e. “to be useful”, to “come in handy”, etc.
The verb पेश आना means “to behave”, or “to treat”. It literally means something like “to present (oneself)”. The verb पेश करना means “to submit”, “to present”, etc. पेश आना can be used in the passive voice. If it is used in the passive voice, it means “to be treated”.
Here’s another example, in the passive voice:
The previous sentence is a bit unusual; it simply demonstrates that this idiom can be used in the passive voice. Hindi speakers tend to prefer the active voice however, i.e., they would probably say “जब मैं भारत में था तब लोग मुझसे बहुत सम्मान से पेश आते थे” instead.
This idiom shouldn’t be confused with indirect verb constructions (e.g. समझ आना), conjunctive participle constructions (e.g. निकल आना), etc. This idiom is only used with a few nouns. नज़र, काम, and पेश are the most common nouns used with this idiom.