首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >构建vue3 + ts + vite项目的最佳解决方案是什么?

构建vue3 + ts + vite项目的最佳解决方案是什么?
EN

Stack Overflow用户
提问于 2021-12-06 10:00:01
回答 1查看 617关注 0票数 0

我对vue感到困惑,我不知道如何将vite、ts和vue3正确地结合在一起,我想知道在vue中最好的解决方案是什么,我稍后会添加vue路由,vuex。

我找到了两种创建上述项目的方法:

  1. npm init vite (然后我选择vue-ts)
  2. npm init vite-app <project-name>(then,我使用npm手动添加类型记录)

我的问题是:

  1. 第一种方式生成vite.config.ts,而第二种方式没有vite.config.ts,为什么,最好的解决方案是什么?

  1. For ts代码样式,在vue中,更好的方式是写什么。我看到了很多种代码,可以用vue3编写带有类型记录的组件,例如:

(1)

代码语言:javascript
复制
<script>
  import { defineComponent, computed } from 'vue'
  import { useStore } from 'vuex'
  import { key } from '../store'

  export default defineComponent({
    name: 'HelloWorld',
    props: {
      msg: {
        type: String,
        default: ''
      }
    },
    setup() {
      const store = useStore(key)
      const count = computed(() => store.state.count)

      return {
        count,
        inCrement: () => store.commit('increment')
      }
    }
  })
</script>

(2)

代码语言:javascript
复制
<script lang="ts">
import { Component, Prop, Vue } from 'vue-property-decorator'
import { isExternal } from '@/utils/validate'

@Component({
  name: 'SidebarItemLink'
})
export default class extends Vue {
  @Prop({ required: true }) private to!: string

  private isExternal = isExternal
}
</script>
EN

回答 1

Stack Overflow用户

发布于 2021-12-10 02:06:59

对于组件代码样式,vue 3建议使用defineComponent + composition api + template(or tsx)

代码语言:javascript
复制
<template>
  <p class="msg">{{ msg }}</p>
</template>

<script lang="ts">
import { defineComponent } from 'vue'

export default defineComponent({
  setup () {
    const msg = 'Hello World!';

    return {
      msg
    }
  }
})
</script>

<style scoped lang="scss" >

</style>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70243658

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档