zoukankan      html  css  js  c++  java
  • 翻车小项目继续

    项目使用的是 vue3 +ts 开发的用的是 vite脚手架,一直使用开发环境。直到有一天 想发布一个版本。 vue-tsc 运行 一推错误,一百多个错误。当时就懵圈了,开发运行都是可以的。一道编译就一推错误。

    错误一:

    项目中是这样子使用 axios的

    在main.ts  引用 axios 然后  app.config.globalProperties.$axios=axios 全局。

    组件中 通过getCurrentInstance()?.proxy?.$axios引用 

    错误二 

    vue-router和 suspense,异步 setup 一起使用是时候,莫名的会出现,parentNode 为null ,或者 emitOptions 为null;然后路由就失效,无论点那里都没有反应了。清理一下缓存,页面刷新一下就好了。

    网上的一些方法也使用了,但是还是没有解决这个问题。如:suspense内使用一个根元素,组件名称和引用的名称需要不一样等等方案。

    错误三,PropType 的使用 

    interface Book{

    title:string

    author:string

    }

     const props=defineProps<{
         mybook:Object as PropType<Book>
     }>();
    但是  props.mybook.title 提示 title没有这个属性。
     
    项目中遇到的另一个问题是sequelize的使用。大致的结构是,企业,需求,意向,订单。企业有多个订单,订单有多个意向,一个意向有一个订单。
     
    一。企业和需求建立联系,需求和意向简历联系,但是查询的时候,不能自动的连起来。如,查询企业信息,包含需求信息,但是无法在包含意向信息。理想的结构是查询公司信息可以包所有的关联都查出来,包括所有的嵌套关联,如 返回的结构
    {
      企业信息:
      {
         需求信息:[
              {
                 意向信息:
                      {
                      订单信息:{}
                      }
              }
            ]
      }
    }
     
    二。 在获取需求信息的时候,无法获取企业信息。如,获取这个公司的所有需求,需要带上公司名称,但是无法关联上。这个需求是通过子查询实现的。

    一次使用vue +ts 的一点感受:

    使用ts之后,在编码的时候有提示,防止变量类型错误等等优点。只是这些优势,需要增加不少的代码量。其次就是使用第三方插件的时候,可能需要修改第三方插件的ts定义。对于接口返回的类型。理想状况下是都需要定义出来的。个人觉得 对于一个项目来说,ts有些繁琐,不太适合。

    第一次使用vue3+ts开发项目,还在学习中。如果有大神知道以上问题的原因,还请帮忙解惑。

  • 相关阅读:
    cf B. Sereja and Suffixes
    cf E. Dima and Magic Guitar
    cf D. Dima and Trap Graph
    cf C. Dima and Salad
    最短路径问题(floyd)
    Drainage Ditches(网络流(EK算法))
    图结构练习—BFSDFS—判断可达性(BFS)
    Sorting It All Out(拓扑排序)
    Power Network(最大流(EK算法))
    Labeling Balls(拓扑)
  • 原文地址:https://www.cnblogs.com/xgq2014/p/15543342.html
Copyright © 2011-2022 走看看