Substring Chainification
05AB1E, 1 byte
£
This is the substring(0,N) command.
Applied on a list this works repeatedly on the remainder on the string.
Try it online!
Python 2, 42 bytes
s,a=input()
for n in a:print s[:n];s=s[n:]
Sometimes you just do it the boring way.
Brachylog, 20 13 bytes
h@[~c.:la~t?,
Try it online!
This is extremely inefficient and times out on TIO for the last test case.
Explanation
Input = [String, List of integers]
h@[ Take a prefix of the string
~c. Take a possible list of strings which when concatenated results in that prefix
:la Take the lengths of each element of that list
~t?, This list of lengths is equal to the list of integers of the Input
A slightly more efficient version, 15 bytes
t:{~l}a.,?h@[~c