Hadamard's Lemma says that, for $a \in \mathbb{R}^m$, every $f \in C^{\infty}_a(\mathbb{R}^m)$ has the form
$$f(x)=f(a)+\sum^{m}_{i=1}(x_i-a_i)g_i(x)$$
where $g_i(x) \in C^{\infty}_{a}(\mathbb{R}^m)$. We then have that $g_i(a)=\frac{df}{dx_i}(a)$. For each $i$, we have $d_i \in T_a\mathbb{R}^m$ defined by $$d_i . f = \frac{df}{dx_i}(a)$$ for all $f \in C^{\infty}_a(\mathbb{R}^m)$.
I understand why $d_i \in T_a\mathbb{R}^m$ (they are linear functionals on $\mathcal{G}_a(\mathbb{R}^m)$ and satisfy the Leibniz condition), but why does the above give rise to a linear map from $\mathbb{R}^m$ to $T_a\mathbb{R}^m$ which maps the standard basis {$e_i$} of $\mathbb{R}^m$ to the basis {$d_i$} of $T_a\mathbb{R}^m$?
{$d_i$} are linear functionals, which act on $f$, not the other way around, so how can we ever find a map taking {$d_i$} and returning a vector {$e_i$}?