V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  yetrun  ›  全部回复第 1 页 / 共 5 页
回复总数  84
1  2  3  4  5  
248 天前
回复了 yetrun 创建的主题 Vue.js 准备写一个关于 Vue 的系列文章
@agileago 嗯,那就行了,总体感觉就挺好了
250 天前
回复了 yetrun 创建的主题 Vue.js 准备写一个关于 Vue 的系列文章
@agileago 有关 Vue 3 中实现范型组件的方案,我做了补充。对于你给出的例子,我有两点疑惑:

1. defaultProps: ComponentProps<AProps<any>> 这一行是作什么的?
2. return <A<ItemA> ... /> 这里的 <ItemA> 必须要有吗?
@CC11001100 OpenAPI json 的模块确实太多细节了,我一开始目标定的比较大,要加入 stage 和 scope ,目的是为了一处编写到处引用,参数和渲染写在一处,列表接口和详情接口也写在一处……总之,目前还有得完善。有句话叫日拱一卒,也就是如此了。还有句话选错了赛道,怎么折腾也没用。
254 天前
回复了 yetrun 创建的主题 Vue.js 准备写一个关于 Vue 的系列文章
@agileago 关于你所说,我再研究研究。我怎么记得 Vue 3 有用 TSX 支持范型组件的写法,先等我几天。
255 天前
回复了 yetrun 创建的主题 Vue.js 准备写一个关于 Vue 的系列文章
@agileago 我去消化一下。前一半部分我理解了,其中用到 TSX 写组件。然后这样也可以实现范型组件了,没错。但是有一个疑问,用 Vue 本身的形式是否也可以完全用 TSX 而不用单文件组件的方式写组件呢?那这样的话用 Vue 本身的形式是否就可以做到范型组件了?

const Comp = defineComponent({
setup () {
return <div>...</div> # TSX
}
})
@BeautifulSoap 行,你说的都是对的
@BeautifulSoap 那有没有可能,express 做的就是全栈开发,因此也就无所谓生成文档的问题了。nestjs 据一二楼说的是可以生成 Swagger 文档的,但是你说不好用那就这样吧。

我承认一点,TS 编译后类型信息丢失。但转过头一想,语言类型的强弱和生成 Swagger 文档其实没关系。Ruby 是弱类型语言,连类型定义都没有,但是仍然可以生成 Swagger 文档。Java 是强类型语言,但也没有单纯从 Java 类定义生成文档的,必须要借助注解。所以,没有生成 Swagger 的方案,要么是你没找到,要么确实是现在还没有,但和 TS 关系不大。
@yetrun 可你介绍里说的就是支持 TypeScript ,还支持哪些语言?
255 天前
回复了 jack4536251 创建的主题 Vue.js vue 开发起来确实爽,但是对 seo 不友好
SEO 这种垃圾的东西,要对它友好干嘛
255 天前
回复了 yetrun 创建的主题 Vue.js 准备写一个关于 Vue 的系列文章
@agileago 可能是我没理解你框架的想法吧。我只是想要用纯粹的 Vue 3 去写应用就行了,现实中遇到坑了需要避掉就记录下来,加深下感受。但你的框架里的东西,继承 VueComponent<FooProps>,然后用到各种注解,说实话不知道想要达到什么目的。

如果说继承 VueComponent<FooProps> 是编写一个组件,各种注解是定义这个组件的各种部分,如 data 、methods 、生命周期等,这样不就是退化到 Vue 2 的写法吗?体验了 Vue 3 setup 带来的自由和组织方式,Vue 2 的写法再也回不去了。

另外说到的依赖注入,我写后端都不用的东西,我写前端就更加用不上了。体会不到依赖注入的目的和它用到的场景。我看到了你的标题里有 Angular 依赖注入,也许对 Angular 开发者更容易理解一点吧,或者 Spring 开发者?
@BeautifulSoap 既然 TS 是强类型的语言,从 class 生成 Swagger 的 Component 是可能的啊。而现实情况没有,说明有这样的需求的人很少。反向倒是有可能,从 Swagger 生成 TypeScript 代码。因为后端很少用 TS 写,有些用 TS 写的是前端开发者,自产自销,要啥文档。
@BeautifulSoap 有没有可能平时用 ts/js 的人不生成 Swagger ?因为主要是以写前端居多,而用 ts 写后端的人大部分是从前端转过去的,需要完成一些小型接口的实现,所以没想到要生成 Swwager 文档。

我观察了一下 koa ,印象中我以前也用过 express ,这两个框架只是一个微型框架,本身没有严格的参数、返回值的语义定义语法,从它们生成 Swagger 很难没有抓手,所以还没有从这两个框架生成 Swagger 文档的方案。

然后一、二楼提到 nest.js ,其提供了 Swagger 文档生成的方案,你可以看一看。

另外,基于语言(通过类和注释)生成 Swagger 文档的,也不是说每种语言都有啊。我自己使用 Ruby 语言做后端,也没有这样的方案,都是基于框架然后生成的。
256 天前
回复了 yetrun 创建的主题 Vue.js 准备写一个关于 Vue 的系列文章
@agileago 感觉很复杂啊,这是不是为解决一个问题引入了另一个问题?
@BeautifulSoap 没错,也有可能像你所说的,通过类和注释生成。但是这样只能生成 components 部分,paths 部分还是要和框架对应才行。但你的问题还是要基于你的场景来回答才行,比如你是用什么框架,比如说 koa 框架,然后想要找一个生成 Swagger 文档的方案,如此云云才好答复。
@jorneyr 这就是 OpenAPI 3 中提到的多态 ref 的情况,它已经为你想到了
别的不说,是否与 swagger-typescript-api ( sta ) 重?相比与它你的亮点是什么?
@jorneyr 成功情况 1 、成功情况 2 这种区分很少见吧,至少我没有遇到过。你可以举个例子吗?

不过 OpenAPI 3 提供了你说的解决方案,有多态 Schema.
你所问的问题是要基于某个框架,然后问基于这个框架是否提供了 Swagger 文档生成的方案吧。独立地说某个语言提供了 Swagger 文档生成工具是否显得有些抽象呢?后端开发者都是先用框架实现 API 接口,然后根据业务逻辑运行的语义生成 Swagger 文档。
这篇主题的行文方式很值得我学习。但这篇主题表达的内容我尚不明白。Mark!
1  2  3  4  5  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5259 人在线   最高记录 6543   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 24ms · UTC 07:43 · PVG 15:43 · LAX 00:43 · JFK 03:43
Developed with CodeLauncher
♥ Do have faith in what you're doing.