For each virtual host, name resolver needs to be informed about new local domain.
Then virtual host definition has to be added, and directory for host's files created.
Finally after Apache restart all should work.

7. Edit local name resolver hosts file:

$ sudo nano /etc/hosts

8. Add local/development domain, for example "helloapp":

127.0.0.1 helloapp

9. Edit httpd-vhosts.conf file:

$ sudo nano /opt/lampp/etc/extra/httpd-vhosts.conf

10. Add virtual host, setting correctly paths and names:

<VirtualHost *:80>
DocumentRoot "/opt/lampp/vhosts/helloapp"
ServerName helloapp
ErrorLog "logs/helloapp-error.log"
CustomLog "logs/helloapp-access.log" combined
# The same settings as for <Directory "/opt/lampp/htdocs"> in conf/httpd.conf
<Directory "/opt/lampp/vhosts/helloapp">
# Possible values for the Options directive are "None", "All",
# or any combination of:
# Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
Options Indexes FollowSymLinks ExecCGI Includes
# AllowOverride controls what directives may be placed in .htaccess files.
# It can be "All", "None", or any combination of the keywords:
# Options FileInfo AuthConfig Limit
AllowOverride All
# Controls who can get stuff from this server.
Require all granted
</Directory>
</VirtualHost>

11. Prepare directory for virtual host, remember about correct path:
(this works only if step 6. has been done, otherwise permission errors can occur)

$ mkdir /opt/lampp/vhosts/helloapp

12. Restart Apache or reload its configuration. Then check if you can access new virtual host at:http://helloapp