- 博客(13)
- 收藏
- 关注
原创 【翻译】TypeScript: Documentation - Type Manipulation
尽管类型参数推断可以帮助我们使代码更短、更易读,但在更复杂的示例中,当编译器无法推断类型时,您可能需要像在前面的示例中一样显式传递类型参数。类型确实是泛型的,因为它会使函数接受任何类型的参数,但实际上当函数返回时,我们失去了关于参数类型的信息。在这种情况下,我们使用类型参数推断,也就是说,我们希望编译器根据我们传入的参数的类型自动为我们设置。如果你还记得之前的示例,有时候你可能想编写一个泛型函数,它可以适用于一组类型,并且你对该类型集合的功能有一定的了解。这样可以让我们看到我们使用泛型的具体类型(例如,
2023-06-06 23:40:49
251
1
原创 【翻译】TypeScript: Documentation - Object Types
因此,为了保持一致性,数值索引的返回类型必须是字符串索引返回类型的子类型,或者是其本身。如果数值索引的返回类型不是字符串索引返回类型的子类型,那么在使用数值索引访问对象时,可能会导致类型不匹配的错误或意外的行为。可以同时支持两种类型的索引器,但是数值索引器返回的类型必须是字符串索引器返回类型的子类型。的规则,这两个索引签名的返回类型应该是兼容的,而不是互相冲突的。在给定索引类型的情况下,数值索引的返回类型必须是字符串索引返回类型的子类型,或者是其本身。大部分情况下,我们处理的对象可能具有可选的属性。
2023-05-21 22:56:34
249
2
原创 【翻译】TypeScript: Documentation - More on Functions
关于函数(Functions)的更多内容函数是任何应用程序的基本构建块,无论是本地函数、从另一个模块导入的函数,还是类的方法。它们也是值,就像其他值一样,TypeScript有许多方式来描述函数的调用方式。让我们学习如何编写描述函数的类型。函数类型表达式描述函数最简单的方式是使用函数类型表达式。语法表示“一个带有一个参数的函数,参数名为a,类型为string,没有返回值”。与函数声明类似,如果没有指定参数类型,则隐式地被认为是any类型。当然,我们可以使用类型别名来命名函数类型调用签名在。
2023-05-14 22:14:35
227
2
原创 【翻译】TypeScript: Documentation - Narrowing
缩小类型假设我们有一个名为padLeft如果padding是一个number,它将把它当作我们想要在input前面添加的空格数。如果padding是一个string,它应该直接将padding添加到input前面。让我们尝试实现当padLeft传递一个number作为padding时的逻辑。Uh-oh,我们在padding上遇到了一个错误。TypeScript警告我们,我们正在将一个类型为的值传递给repeat函数,而它只接受number,它是对的。换句话说,我们没有先明确检查padding。
2023-05-14 22:09:02
130
原创 【翻译】TypeScript: Documentation - Everyday Types
日常类型:TypeScript中的常用类型基本类型:stringnumber, 和有三种非常常用的基本类型stringnumber, 和boolean,这些类型分别对应TypeScript中的三种基本类型stringtruefalse类型名称StringNumber和Boolean是合法的,但它们指的是一些很少出现在您代码中的特殊内置类型。始终使用stringnumber或boolean作为类型。和Boolean类型分别对应JavaScript中的和Boolean对象。这些对象是JavaScript。
2023-05-09 01:02:11
120
原创 【翻译】TypeScript: Documentation - The Basics
JavaScript中的每一个值都有一组可以通过运行不同的操作来观察的行为。这听起来很抽象,但是作为一个简单的例子,考虑一下我们可能对一个叫做message的变量运行的一些操作。如果我们不知道message的值-这是很常见的情况-我们无法可靠地说运行这段代码会得到什么结果.每个操作的行为完全取决于我们一开始拥有的值message当我们编写JavaScript时,这些问题的答案通常都在我们的脑海中,我们必须希望所有的细节都是正确的假设message如果运行第一行代码,会得到该字符串的小写形式。
2023-05-08 00:53:02
3284
2
原创 vue3 Element Plus Tree组件超简单实现拖动排序
因为两个项目使用了两个不同的UI框架,所以也要实现一下拖动排序要求:当前节点下的子节点拖动排序不允许将外部节点拖进子节点不允许将内部节点拖到外面闲话少说,直接上代码 <el-tree :allow-drop="allowDrop" :data="data" draggable node-key="id" /><script lang="ts" setup>const allowDrop = (draggingNode, dropNode, type) =>
2022-05-13 00:24:15
2451
3
原创 vue3 ant design vue tree 超简单实现拖动排序
超简单实现vue3 UI框架 ant design vue tree组件拖动排序
2022-05-12 23:33:20
2576
1
原创 Uni Push + RestAPI V2 服务端推送 快速入门
uni push首先,你的app要先开启推送功能,按照下图选择uniPush然后点击配置填上下面的信息,点击开通就可以了应用名称就是你的项目名称Android 包名 你打开HBuilder x中在当前项目中点击发行 > 原生APP-云打包,找到Android 包名粘过来Android 应用签名 这个就是自有证书里SHA1的值,粘过来就行什么是自有证书? 我来告诉你!!!有了自有证书怎么查看签名? keytool -list -v -keystore demoKey.key
2021-08-02 16:37:14
2444
1
原创 vue表单文件上传
填写表单,然后根据需要选择文件,最后将数据一起提交给后台使用<input ref="file" type="file" multiple="multiple"/> 上传文件multiple="multiple" 多选获取值jsdocument.getElementById("file").filesvuethis.$refs.file.files提交ajax需要加请求头var files = document.getElementById("file").f
2021-04-14 12:57:01
1402
原创 vue中使用tinymce富文本
安装方式一:npm install @tinymce/tinymce-vue -Snpm install tinymce -S方式二:将下面的配置粘到package.json文件dependencies中执行npm install"@tinymce/tinymce-vue": "^2.0.0","tinymce": "^5.0.3"下载中文包tinymce官网使用在public目录下新建tinymce目录,将中文包和skins目录(node_modules->tinymce
2021-02-23 17:08:26
1198
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人