使用打字稿的 vue.js 项目中可用的进度条
Progressbar available in vue.js project using typescript
我在使用打字稿开发 vue.js 项目时遇到问题。
我想像下面的demo一样使用进度条,但是不能用,因为这个库不支持typescript
http://hilongjw.github.io/vue-progressbar/index.html
有人可以告诉我使用哪个库吗?
谢谢。
TypeScript 逐渐被采用。这意味着你可以慢慢地将一个 JS 项目转换为 TS,你不必一次全部完成。
此外,TS 是 JavaScript 的超集。这意味着,在引擎盖下,它仍然是 JavaScript,您可以在其中使用 JavaScript 模块。
当您找到一个 JS 模块并想在 TS 项目中使用它时,您可以执行以下操作:
检查是否有人发布了@types/your-module
包,声明了模块的所有类型(其中your-module
需要是JS包的实际包名)。如果存在,请将其安装在 devDependencies
中,TS 会选择它
如果第一个选项不可用,请在 src
文件夹中创建一个 types.d.ts
并在其中插入一行声明该模块。例如:
declare module 'your-module';
这将告诉 TS:抱歉,没有可用于此包的类型定义,但我仍然想使用它。所以TS不会抛出任何与包相关的错误。
最有趣的部分是,大多数 IDE 实际上会绕过这一点,并会从包的导出中推断类型,在大多数情况下,这会为您提供自动完成建议。
最近,IDE 在 auto-inferring 类型方面做得更好。
旁注:对于您的特定情况,您可以使用 this definition 扩展“自定义”类型定义。不是官方的,可能不完整,但比基本的 declare module "vue-progressbar"
更好(顺便说一句,这会起作用)。
另请注意:您只需要在 Vue2 中声明 module "vue/types/vue"
,如果您使用的是 Vue3,则不需要。
我在使用打字稿开发 vue.js 项目时遇到问题。
我想像下面的demo一样使用进度条,但是不能用,因为这个库不支持typescript
http://hilongjw.github.io/vue-progressbar/index.html
有人可以告诉我使用哪个库吗?
谢谢。
TypeScript 逐渐被采用。这意味着你可以慢慢地将一个 JS 项目转换为 TS,你不必一次全部完成。
此外,TS 是 JavaScript 的超集。这意味着,在引擎盖下,它仍然是 JavaScript,您可以在其中使用 JavaScript 模块。
当您找到一个 JS 模块并想在 TS 项目中使用它时,您可以执行以下操作:
检查是否有人发布了
@types/your-module
包,声明了模块的所有类型(其中your-module
需要是JS包的实际包名)。如果存在,请将其安装在devDependencies
中,TS 会选择它如果第一个选项不可用,请在
src
文件夹中创建一个types.d.ts
并在其中插入一行声明该模块。例如:declare module 'your-module';
这将告诉 TS:抱歉,没有可用于此包的类型定义,但我仍然想使用它。所以TS不会抛出任何与包相关的错误。
最有趣的部分是,大多数 IDE 实际上会绕过这一点,并会从包的导出中推断类型,在大多数情况下,这会为您提供自动完成建议。
最近,IDE 在 auto-inferring 类型方面做得更好。
旁注:对于您的特定情况,您可以使用 this definition 扩展“自定义”类型定义。不是官方的,可能不完整,但比基本的 declare module "vue-progressbar"
更好(顺便说一句,这会起作用)。
另请注意:您只需要在 Vue2 中声明 module "vue/types/vue"
,如果您使用的是 Vue3,则不需要。