title: why the UI did not change when I changed the store value
body: <p>I am using vue 3 <code>&quot;vue&quot;: &quot;^3.2.29&quot;,</code> + typescript <code>&quot;typescript&quot;: &quot;^4.5.5&quot;,</code> to develop a google chrome extension. Using vuex <code>&quot;vuex&quot;: &quot;^4.0.2&quot;</code> to manage the vue3 state.  when I received the result, I set the value using dispatch like this:</p>
  <pre><code>chrome.runtime.onMessage.addListener(
      async function(request, sender, sendResponse) {
          if (request.msg === &quot;something_completed&quot;) {
              let result = request.data.content
              await dispatch(
                'Trans/setUsername',
                result
                )
          }
      }
  );
  </code></pre>
  <p>and this is the Trans store define:</p>
  <pre><code>const SET_USER_NAME = 'SET_USER_NAME'
  const SET_RANDOM_IMG = 'SET_RANDOM_IMG'
  
  export default {
    namespaced: true,
  
    state: {
      username: 'Tom',
      randomImg: 'https://images.dog.ceo/breeds/bulldog-french/n02108915_8258.jpg',
    },
  
    getters: {
      getUsername (state: { username: string }) {
        return state.username
      },
      getRandomImg (state: { randomImg: string }) {
        return state.randomImg
      },
    },
  
    mutations: {
      [SET_USER_NAME]: (state: { username: string }, username: string)=&gt;{
        state.username = username
      },
      [SET_RANDOM_IMG]: (state: { randomImg: string }, randomImg: string)=&gt;{
        state.randomImg = randomImg
      },
    },
  
    actions: {
      async setUsername ({dispatch, commit, getters}: any, data: unknown) {
          debugger
          commit('GET_USER_NAME', data)
      },
    },
  }
  </code></pre>
  <p>and get user name in the vue 3 setup like this:</p>
  <pre><code> let username = computed(()=&gt;getters['Trans/getUsername'])
  </code></pre>
  <p>in the UI, bind the username like this:</p>
  <pre><code>    &lt;span&gt;{{username}}&lt;/span&gt;
  </code></pre>
  <p>the UI could successfully render the default username <code>Tom</code>, but when I changed the username by dispath, the UI username did not changed. Am I missing something? what should I do to fix this problem? I am sure the setusername function works, and do the commit with the new value, but the UI just did not refresh.</p>