The correct analogy with the QM wave function can be understood from the path integral formulation. Given a theory with an action $S[\varphi]$ the path integral is denoted as
$$
Z = \int [\mathrm{d}\varphi]\,e^{iS[\varphi]}\,.
$$
A wave functional is, as the name says, a functional of the configuration variables of your QFT, which obviously are fields. In QM if you had, say, $N$ coordinates, your wave function would be
$$
\psi(q_1,\ldots,q_N)\,.
$$
QFT, on the other hand, can be though of as if there were infinitely many coordinates ($N\to\infty$). Those coordinates describe your field configuration at a certain time slice, which we can take to be $x^0 = 0$ for simplicity. Therefore the wave functional is something like
$$
\Psi[\phi_0(\vec{x})]\,.
$$
You can imagine discretizing your space, at which point the $q_i$'s would be the values of $\varphi$ at the point $x = (0,\vec{x}_i)$.
In the path integral language a field configuration can be thought of as a boundary condition for the integral at a certain time slice. We can therefore define a wave functional as the following path integral
$$
\Psi[\phi_0(\vec{x})] = \int[\mathrm{d}\varphi]_{\varphi(0,\vec{x})\equiv\phi_0(\vec{x})}\,e^{iS[\varphi]}\,.
$$
Where, as you can see, the integration is restricted only to those configurations which have $\varphi(0,\vec{x}) \equiv \phi_0(\vec{x})$. Now, this would actually the vacuum state because we are not inserting anything in the path integral. A more general state can be obtained by putting operators such as
$$
\Psi_{1,\ldots,n}[\phi_0(\vec{x})] = \int[\mathrm{d}\varphi]_{\varphi(0,\vec{x})\equiv\phi_0(\vec{x})}\,\mathcal{O}_1(x_1)\cdots\mathcal{O}_n(x_n)\,e^{iS[\varphi]}\,.
$$