Vue3 +TScript 基本开发

这篇具有很好参考价值的文章主要介绍了Vue3 +TScript 基本开发。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

首先你要使用 vite 创建项目

npm init vue@latest

并选择带ts的版本
Vue3 +TScript 基本开发,typescript,vue.js

文件的结构
Vue3 +TScript 基本开发,typescript,vue.js
main.ts 文件

import { createApp } from "vue"
import { createPinia } from 'pinia'

import App from "./App.vue"
const pinia = createPinia()
const app = createApp(App)

app.use(pinia).mount("#app")

App.vue 文件

<script setup>
import "./styles/base.css"
import "./styles/index.css"
    
import TodoHeader from "./components/TodoHeader.vue";
import TodoMain from "./components/TodoMain.vue";
import TodoFooter from "./components/TodoFooter.vue";

</script>
<template>
  <section class="todoapp">
    <TodoHeader></TodoHeader>
    <TodoMain></TodoMain>
    <TodoFooter></TodoFooter>
  </section>
</template>

store / todos.js 文件文章来源地址https://www.toymoban.com/news/detail-541149.html

import axios from 'axios'
// import { el } from 'element-plus/es/locale'
import {defineStore} from 'pinia'
import {computed, ref} from 'vue'

export default defineStore('todos', () => {
    let list = ref([])

    // 得到数据
    const getList = async () => {
        const res = await axios.get('/list')
        list.value = res.data
        console.log('得到数据',res)
    }
    // 修改状态
    const editStatus = async (id,obj) => {
        const res = await axios.patch('/edit/'+id,obj)
        console.log('修改状态',res)
    }
    // 删除当前项
    const delData = async (id) => {
        const res = await axios.delete('/del/'+id)
        console.log('删除当前项', res)
    }
    // 添加
    const addData = async (obj) => {
        const res = await axios.post('/add',obj)
        console.log('添加', res)
    }
    // 计算属性
    const type = ref('all')
    const setType = curType => type.value = curType
    
    const listType = computed(()=> {
        if(type.value === 'all') {
            return list.value
        } else if(type.value === 'yes') {
            return list.value.filter(it => it.isDone)
        } else {
            return list.value.filter(it => !it.isDone)
        }
    })
    
    console.log('type属性',type)

    // 导出
    return {
        list,
        getList,
        editStatus,
        delData,
        addData,
        setType,
        type,
        listType
    }
})

到了这里,关于Vue3 +TScript 基本开发的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 使用命令行方式搭建uni-app + Vue3 + Typescript + Pinia + Vite + Tailwind CSS + uv-ui开发脚手架

    项目代码以上传至码云,项目地址:https://gitee.com/breezefaith/uniapp-vue3-ts-scaffold 近日心血来潮想做一个开源项目,目标是做一款可以适配多端、功能完备的模板工程,包含后台管理系统和前台系统,开发者基于此项目进行裁剪和扩展来完成自己的功能开发。但前台系统花样繁多

    2024年01月20日
    浏览(63)
  • Vue3项目中使用TypeScript

    在单文件组件中使用 TypeScript,需要在 小结: 注意 当 script 中使用了 ts ,模板 template 在绑定表达式时也支持ts。 如果在表达式中不指名类型时,编译器会报警告提示。 正确写法 表达式指定类型 基于运行时声明 当使用 基于类型声明 通过泛型来定义 Props 语法规定 传递给

    2023年04月20日
    浏览(42)
  • Vue3 +TypeScript 引入 BabylonJs(Vue3实现3D)【一篇文章精通系列】

    本文主要介绍如何使用Vue3和TypeScript引入BabylonJs技术实现3D效果。结合实际案例,详细讲解了如何在Vue3项目中引入BabylonJs,并了解其相关知识。通过本文的学习,相信读者可以轻松掌握Vue3实现3D效果以及BabylonJs的相关知识。 1、创建Vue3 + TypeScript项目 将生成的js文件都修改为

    2024年02月04日
    浏览(43)
  • Vue3项目中没有配置 TypeScript 支持,使用 TypeScript 语法

    1.安装 TypeScript:首先,需要在项目中安装 TypeScript。在终端中运行以下命令 2.创建 TypeScript 文件:在 Vue 3 项目中,可以创建一个以 .ts 后缀的文件,例如 MyComponent.ts。在这个文件中,可以使用 TypeScript 语法编写代码。 在上面的示例中,我们使用 defineComponent 函数来定义一个

    2024年02月15日
    浏览(37)
  • Vue3通透教程【十一】初探TypeScript

    专栏介绍: 凉哥作为 Vue 的忠实 粉丝输出过大量的 Vue 文章,应粉丝要求开始更新 Vue3 的相关技术文章,Vue 框架目前的地位大家应该都晓得,所谓三大框架使用人数最多,公司选型最多的框架,凉哥之前在文章中也提到过就是 Vue 框架之所以火起来的原因,和 Vue 框架相比其

    2023年04月09日
    浏览(39)
  • Vite+Typescript+Vue3学习笔记

    1.1、创建项目(yarn) 1.2、项目配置 1、配置vue文件识别 vite默认情况下不识别.vue后缀的文件,需在vite-env.d.ts配置下 2、Api选择 Vue3推荐使用Composition API,这里关闭Vue2的Option Api 1.3、常用依赖 1、@types/node ts需安装node的类型,否则使用node相关会提示找不到 2、auto-import 用于简化Vu

    2024年02月15日
    浏览(48)
  • uniapp适配微信隐私协议开发指南[uniapp+vue3+js]

    没怎么做过uniapp,找了一些文章做了出来,给大家分享一下 2023.9.15以后需要适配微信的隐私协议开发指南 目前uniapp的说法是微信小程序隐私协议开发指南 | uni-app官网 微信小程序小程序隐私协议开发指南 | 微信开放文档 微信官方提供了几个demo demo1: 演示使用  wx.getPrivacySet

    2024年02月07日
    浏览(59)
  • Vue3 开发实战分享——打印插件 Print.js 的使用(Vue3 + Nodejs + Print.js 实战)以及 el-table 与 el-pagination 的深入使用(下)

    在进入文章的正文之前,我们先一起了解一下关于 CSDN 今年的 1024 程序员节。与此同时这也是我在 CSDN 参与的第二个 1024 程序员节日,转眼间也快写博客两年时间,去年很遗憾没有去到深圳(疫情原因)线下参加这个有趣而充实的峰会。今年没有特殊情况的话一定会如约而至

    2024年02月06日
    浏览(52)
  • Vue3 开发实战分享——打印插件 Print.js 的使用(Vue3 + Nodejs + Print.js 实战)以及 el-table 与 el-pagination 的深入使用(上)

    今天久违的更新一下关于 Vue 的文章了,本篇文章是基于 Vue3 + Node.js + ElementPlus 的实战项目分享,实战内容包括有打印插件 Print.js 的使用,以及关于 ElementPlus 中的 el-table 与 el-pagination 的深入使用。本次项目以文章(axios 实战进阶练习——基于 Vue3 + Node.js + ElementPlus 实现的联

    2024年02月06日
    浏览(46)
  • Vue+SpringBoot后台管理系统:Vue3+TypeScript项目搭建(一)

    查看Note版本 查看npm版本 然后将npm升级至最新版本 将npm下载源换至http://registry.npm.taobao.org 可以在后续的npm下载提高下载速度 安装vue cli node版本v18.16.1 vue-cli版本v5.0.8 创建项目命令 vue_typescript_elementplus_demo 是项目名,可以自定义 选择 Manually select features ,进行自定义 然后选择

    2024年02月13日
    浏览(84)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包