There is no limitation as the Adobe Launch is built to support SPA, however, keep in mind that a SPA does not have a usual page load cycle, especially if you have client-side URL routing, so you will need to implement some events in your SPA to tell Adobe Launch when something is happening in your page/view. It's recommended three custom JS events:
event-view-start - to fire whenever a view start to load
event-view-end - to fire whenever a view finished loading - here it's where you will implement your Analytics)
event-action-trigger - to fire whenever there is an interaction with something on your website.
You also should have a data layer set and updated before loading Adobe Launch.
You will then set up all your Adobe Launch rules and triggers based on these events.
I just deployed analytics for a SPA website and did not face any limitation doing what I just mentioned above
Keep in mind that for Adobe Target you will face some limitations, to run VEC in Adobe Target you will need to implement a function called TriggerViews and will be able to run only A/B test and XT using the Visual Experience Composer.