The answer is no, I think.  Here is a proof sketch (with one unclear point, for now.) 

Let $(S_n)_{n\in\omega}$ be a family of ``pairs of socks''; that is, each $S_n$ has 2 elements, the $S_n$ are disjoint, but there is no set which meets infinitely many $S_n$ in exactly one point.  Let $S$ be the union of the $S_n$.

Let $V$ be a vector space with basis $S$ over the 3-element field. For each $v\in V$, each $s\in S$ let $c_s(v)$ be the $s$-coordinate of $v$.   (In your notation: $v(s)$.)

Consider the subspace $W$ of all vectors $w$ with the following property:  For all $n$, if $S_n = \{a,b\}$, then $c_a(w)+c_b(w)=0$. The set of all $n$ such that for both/any $a\in S_n$ we have $c_a(w) \not=0$ will be called the domain of $w$.  Clearly, each domain is finite, and for each finite subset of $\omega$ of size $k$ there are $2^k$ vectors $w\in W$ with this domain. 

I claim that $W$ has no basis.  So assume that $C$ is a basis.  

Fix any well-order of the finite subsets of $\omega$. Take the first set $D_0$ which appears as the  domain of a basis vector. Add all basis vectors with domain $D_0$; the domain of their sum $s_0$ is non-empty and has a least element $n_0$; now $s_0$ chooses one element $x_0 in S_{n_0}$.  (Namely, the one with coordinate 1$.) 

Let $D_1$ be the next set which appears as domain of a basis vector. Continue as above to find $s_1$, and let $n_1$ be the least element in the domain of $s_1$ other than $n_0$, and let $s_1$ choose an element $x_1 in S_{n_1}$.  (It may happen that the domain of $s_1$ is the singleton $\{n_0\}$; in this case, $x_1$ is undefined.) 

Continue by induction, and check that infinitely many $x_k$ will be defined.