vue组件名字为什么需要引号扩起来?

问题遇到的现象和发生背景

为什么组件名 @click="com='Left'" 和 com: 'Right' ,要加引号扩起来?

问题相关代码,请勿粘贴截图
<template>
  <div class="app-container">
    <h1>App 根组件</h1>
    <hr />
    <button @click="com='Left'">显示Left</button>
    <button @click="com='Right'">显示Right</button>
    <div class="box">
      <keep-alive>
        <component :is="com"></component>
      </keep-alive>
    </div>
  </div>
</template>

<script>
import Left from './components/Left.vue'
import Right from './components/Right.vue'


export default {
  data() {
    return {
      com: 'Right'
    }
  },
  components: {
    Left,
    Right
  }
}
</script>

<style lang="less">
.app-container {
  padding: 1px 20px 20px;
  background-color: #efefef;
}
.box {
  display: flex;
}
</style>
运行结果及报错内容
我的解答思路和尝试过的方法
我想要达到的结果

因为com是个String

com是个变量,值是一个String类型的值,is接受一个一个字符串类型的值,作为组件的名称,会自动去找这个名称的组件