首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

鸿蒙高质量代码静态检测200条四

子组件只设置span属性,且值与父组件的columns属性相等@cross-device-app-dev/grid-span-value在栅格布局组件GridCol中,span和offset不建议使用小数...,逗号前不加空格@hw-stylistic/curly条件语句和循环语句的逻辑代码必须写在大括号中@hw-stylistic/file-naming-convention强制代码文件和资源文件保持一致的命名风格...禁止使用 TypeScript语法中的命名空间,仅适用于js/ts@typescript-eslint/no-parameter-properties禁止在类构造函数中使用参数属性,仅适用于js/ts@.../no-unsafe-member-access禁止成员访问“any”类型的值,仅适用于js/ts@typescript-eslint/no-unsafe-return函数禁止返回类型为“any”的值,...仅适用于js/ts@typescript-eslint/no-use-before-define禁止在变量声明之前使用变量,仅适用于js/ts@typescript-eslint/prefer-as-const

9000

类型即正义:TypeScript 从入门到实践(二):函数、交叉联合类型与类型守卫

TS 类型,接口之后,我们开始了解如何给更加复杂的结构注解类型,这就是我们这节里面要引出的函数,进而我们讲解如何对类型进行运算:交叉类型和联合类型,最后我们讲解了最原子类型:字面量类型,以及如何与联合类型搭配实现类型守卫效果...,当时我们没有详细讲解,在这一节中我们就来详细讲解一下 TS 中的函数。...有时候返回值也可以不写,TS 可以根据参数类型和函数体计算返回值类型,也就是俗称的自动推断类型机制。...可选参数 就像我们之前接口(Interface)中有可选属性一样,我们的函数中也存在可选参数,因为使用 TS 最大的好处之一就是尽可能的明确函数、接口等类型定义,方便其他团队成员很清晰了解代码的接口,大大提高团队协作的效率...,然后通过 isCompleted 过滤,生成 小结 我们来总结和回顾一下这一小节学到的知识: 首先我们讲解了 TS 中的函数,主要讲解了如何注解函数 然后引出了函数赋值给变量时如何进行变量的函数类型注解

2.7K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    一文读懂TS的(.d.ts)文件

    在使用 TS 的时候,最大的一个好处就是可以给 JS 各种类型约束,使得 JS 能够完成静态代码分析,推断代码中存在的类型错误或者进行类型提示 TS 完成类型推断,需要事先知道变量的类型,如果我们都是用...d.ts文件用于为 TypeScript 提供有关用 JavaScript 编写的 API 的类型信息。简单讲,就是你可以在 ts 中调用的 js 的声明文件。...这个时候你不能用TS重写主流的库,这个时候我们只需要编写仅包含类型注释的d.ts文件,然后从您的 TS 代码中,可以在仍然使用纯 JS 库的同时,获得静态类型检查的 TS 优势。...在 Typescript 2.0 中使用 @type 类型定义,这种方式已经不推荐使用。...Typings Typings 也是一个用来管理 Typescript 定义的库。这种方式已经不推荐使用。

    4.6K21

    前端架构师神技,三招统一团队代码风格

    在团队协作过程中,当组内其他人需要使用或 review 你的代码,看到这种情况,除了喷你,还要花费大量时间了解你写的是什么。...不规范的地方越多,程序质量越低,团队协作的效率也就会越低。 了解了不规范的代码以及不规范代码带来的问题,作为前端架构师,我们就要思考三个问题: 如何制定规范? 如何统一团队的规范? 如何检测规范?...这里 打开上面的网页,打绿钩的表示是已配置的。...正因为如此,在脚手架生成的项目中虽然默认都开启了 ESLint,但是很多人使用不久后觉得烦人,效率低下,所以都手动关闭了 ESLint。...": 100, // 一行的字符数,超过会换行(默认80) "tabWidth": 2, // 每个tab相当于多少个空格(默认2) "useTabs": true, // 是否使用tab进行缩进

    1K20

    Eslint配置

    前言 开发的过程中不同的编辑器,不同的格式化插件对应的代码格式都有差异,这就导致代码风格不一致或是合并冲突。 这里建议不使用开发IDE自带的格式功能,使用ESLint对代码格式进行约束和格式化。...- 关闭 camelcase: 0, //强制驼峰法命名 - 关闭 "no-undef": 0, //不能有未定义的变量 - 关闭 "no-alert": 0, //禁止使用alert...其中 一般使用@babel/eslint-parser作为parser,若使用typescript,则一般使用@typescript-eslint/parser typescript插件@typescript-eslint...方式2 首先点击 Edit => Macros 进入录制状态 在我们的代码页面右键点击Fix ESLint Problems,再点击菜单中的File=>Save All进行保存 这里不建议直接点击Ctrl...在 VSCode 中,默认 ESLint 并不能识别 .vue、.ts 或 .tsx 文件,需要在「文件 => 首选项 => 设置」里做如下配置: { "eslint.validate": [

    2.8K10

    代码规范之-理解ESLint、Prettier、EditorConfig

    支持多种文件格式 编辑器读取到文件格式会匹配并遵循配置文件定义的规则; 就近原则 打开文件时,EditorConfig插件会在打开的文件的目录中以及每个父目录中查找名为.editorconfig的文件。...总结一下ESLint的作用及优势: 检查语法错误,避免低级bug; 比如:api语法错误、使用了未定义的变量、修改const变量 统一团队代码风格 比如:使用tab还是空格,使用单引号还是双引号等 确保代码遵循最佳实践...2 - 开启规则,使用错误级别的错误:error (当被触发的时候,程序会退出) Globals-配置额外的全局变量 启用ESLint规则后,当访问当前源文件内未定义的变量时,no-undef 规则将发出警告...而有时候,我们是需要在其他文件访问一些全局变量的,且保证能正常取到值。这时可以在 ESLint 中定义这些全局变量,这样 ESLint 就不会发出警告了。.../ 复制代码 配置文件中通过globals 配置属性设置,对于每个全局变量键,将对应的值设置为 "writable" 以允许重写变量,或 "readonly" 不允许重写变量。

    2.9K30

    TypeScript在项目开发中的应用实践体会

    而使用Typescript当中的readonly关键字对属性或者是变量进行声明,那么将会在编译时就发出告警。那么在声明部分 ?...ES Module的引入方式大家都知道,但是如何对其声明.d.ts,就看下面这个用例。 我对config/index.js创建了一个index.d.ts作为其声明文件,并且导出了config对象。...相信我,当你弄懂后,你对于使用Typescript会有一个新的认识,写起来会更加的得心应手。 实践场景 看完了太多的理论东西,那么来看看在日常实践中是如何真实实践一把呢?...对于Modal的类型作为一些基本定义,然后对DvaDispatch进行部分的注入和推导。 type拥有modal中namespace和effects & reducers的类型推导。...团队协作当中,index.d.ts多数为公共类型。而其他文件中的则是模块类型。举个例子,Request的返回类型。

    2.9K60

    vscode 前端最佳插件配置

    ": 8, // 打开的编辑器的最大数量(默认为10,超出数量会自动关闭) // 代码提示显示位置,控制自定义代码片段所处位置。...]": { // 对ts文件进行格式化时,使用哪一种风格 (此处使用的是vscode中安装的ts插件默认风格进行格式化) "editor.defaultFormatter":...": "chrome", // 配置打开html文件的默认浏览器 "search.exclude": { // VScode进行文件搜索时,不搜索这些区域。...展开缩写 // vscode已经内置emmet,这一设置最大作用是:当输入的文本不属于Emmet定义的缩写规则时,依然允许使用Tab键进行扩展。...如果不这样做,所选文本的所有实例都将突出显示,从而影响Dart突出显示所选变量的精确引用的能力。

    5.6K20

    前端团队代码规范最佳实践,个人成长必备!

    在团队协作过程中,当组内其他人需要使用或 review 你的代码,看到这种情况,除了喷你,还要花费大量时间了解你写的是什么。...不规范的地方越多,程序质量越低,团队协作的效率也就会越低。 了解了不规范的代码以及不规范代码带来的问题,作为前端架构师,我们就要思考三个问题: 如何制定规范? 如何统一团队的规范? 如何检测规范?...在一个团队中,每个开发者往往各自有各自的编码习惯。 然而这又成为了问题。再拿变量举例:一个团队中,有的人习惯用下划线命名变量,如 user_name;有的人习惯用驼峰命名变量,如 userName。...正因为如此,在脚手架生成的项目中虽然默认都开启了 ESLint,但是很多人使用不久后觉得烦人,效率低下,所以都手动关闭了 ESLint。...": 100, // 一行的字符数,超过会换行(默认80) "tabWidth": 2, // 每个tab相当于多少个空格(默认2) "useTabs": true, // 是否使用tab进行缩进

    69510

    初探webpack之从零搭建Vue开发环境

    ,简单的使用process.env.NODE_ENV在webpack.config.js中区分一下即可,cross-env是用以配置环境变量的插件。...随后运行npm run dev即可自动打开浏览器显示预览,当然按照上边的代码来看页面是空的,但是可以打开控制台发现确实加载了DOM结构,并且Console中显示了我们console的2,并且此时如果修改了源代码文件.../tab-b.vue两个组件,以及承载这两个组件的src/views/framework.vue组件,之后将App.vue组件仅作为一个承载的容器,以及src/main.js引用了VueRouter,主要是一些...配置resolve的一些信息以及ts-loader的解析,对于.vue的TS装饰器方式修改,src/sfc.d.ts作为.vue文件的声明文件,VueRouter与Vuex的TS修改,以及最后的tsconfig.json...用以配置TS信息,配置TypeScript完成之后的commit id为0fa9324。

    1.2K30

    【总结】1165- 前端团队代码规范最佳实践,个人成长必备!

    在团队协作过程中,当组内其他人需要使用或 review 你的代码,看到这种情况,除了喷你,还要花费大量时间了解你写的是什么。...不规范的地方越多,程序质量越低,团队协作的效率也就会越低。 了解了不规范的代码以及不规范代码带来的问题,作为前端架构师,我们就要思考三个问题: 如何制定规范? 如何统一团队的规范? 如何检测规范?...在一个团队中,每个开发者往往各自有各自的编码习惯。 然而这又成为了问题。再拿变量举例:一个团队中,有的人习惯用下划线命名变量,如 user_name;有的人习惯用驼峰命名变量,如 userName。...正因为如此,在脚手架生成的项目中虽然默认都开启了 ESLint,但是很多人使用不久后觉得烦人,效率低下,所以都手动关闭了 ESLint。...": 100, // 一行的字符数,超过会换行(默认80) "tabWidth": 2, // 每个tab相当于多少个空格(默认2) "useTabs": true, // 是否使用tab进行缩进

    1.2K20

    项目eslint从零到一

    /config 此时会让我们选择第三个,并且选择js modules, vue 当你默认选择后就会生成一个文件.eslintrc.js,由于我添加了ts所以默认也会添加@typescript-eslint...plugins: ['vue', '@typescript-eslint'], rules: { indent: ['error', 'tab'], 'linebreak-style.../src/index.js 执行该命令就会检测对于的文件是否符合eslint默认配置的规则 添加eslint规则 在.eslintrc.js中,主要有以下5个部分 module.exports = {...', ], rules: { 'no-undef': 0, // 由于eslint无法识别.d.ts声明文件中定义的变量,暂时关闭 'no-console...安装完后,打开对应文件,就会有对应的提示 并且你可以通过提示跳转到对应的eslint .prettierrc自动格式化代码 在vscode中装上插件Prettier code formatter

    1.6K20

    萌新跟着操作也能学会的保姆级全栈项目开发实录一:项目初始化配置

    2、打开项目 可以看到项目有报错,我们不要管,直接按照下图操作 pnpm i 然后关闭VSCode,再次打开。...继承 Vue 官方的 TypeScript 配置文件 compilerOptions.lib ["esnext", "dom"] 指定编译所需的库 "esnext" 使用 ECMAScript 最新版本的功能...**/*.vue"] 包含在编译中的文件或目录 "src/**/*.ts" 包含 src 目录下所有的 .ts 文件 "src/**/*.d.ts" 包含 src 目录下所有的 .d.ts 文件...键补全 注意 下面的配置你可以直接访问gitee,然后下载,当然也可以自己操作一下 6、使用ESLint 在项目中添加.eslintignore,.eslintignore 文件的作用是指定 ESLint...Prettier 用这个来实现自动格式化,大大减少编码时间 具体看我其他文章 8、添加VScode配置 如何新建以上文件 extensions.json settings.json 这两个文件的作用是:

    14610

    深度讲解TS:这样学TS,迟早进大厂【21】:代码检查

    TS系列地址: 21篇文章带你玩转ts 应该使用 let 或 const 而不是 var ❌ ✅ myName 被误写成了 myNane ✅ ✅ toString 被误写成了 toStrng ✅️ ❌...上例中,我们使用了 var 来定义一个变量,但其实 ES6 中有更先进的语法 let 和 const,此时就可以通过 eslint 检查出来,提示我们应该使用 let 或 const 而不是 var。...规则的取值一般是一个数组(上例中的 @typescript-eslint/consistent-type-definitions),其中第一项是 off、warn 或 error 中的一个,表示关闭、警告和报错..." ], "typescript.tsdk": "node_modules/typescript/lib" } 这时再打开一个 .ts 文件,将鼠标移到红色提示处,即可看到这样的报错信息了...为什么有些定义了的变量(比如使用 enum 定义的变量)未使用,ESLint 却没有报错?§ 因为无法支持这种变量定义的检查。

    2.6K20

    typescript实战总结之实现一个互联网黑白墙

    前言 笔者上一篇文章 TS核心知识点总结及项目实战案例分析 主要写了typescript的用法和核心知识点总结, 这篇文章将通过一个实际的前端案例来教大家如何在项目中使用typescript....你将收获 如何使用umi快速搭建一个基于React + antd + typescript的前端项目 中后台前端项目的目录和ts文件划分 在React组件中使用typescript 在工具库中使用typescript...(注: 本文仅针对项目剖析和学习使用, 不做任何商业用途) 该项目是一个响应式网站, 针对PC端和H5均做了一定的适配, 接下来我们将正对该网站做一次typescript剖析....存放js工具库, 请求库等公共js文件 在了解了上面的目录和目录的含义之后, 我们再来看看如何规划其中的ts文件....在React组件中使用typescript 这里笔者将会拿该项目的自定义上传组件以及白名单页面作为例子, 文件上传组件笔者将采用SFC(即函数组件), 白名单页面将采用类组件, 这样可以方便大家对这两中组件开发模式下的

    1.2K10

    Webpack5 搭建 Vue3 + TS 项目

    但是 babel7 出来之后有了解析 typescript 的能力,有了这一层面的支持,我们就可以只使用 babel,而不用再加一轮 ts 的编译流程了。...在 babel 7 中,我们使用新的 @babel/preset-typescript 预设,结合一些插件便可以解析大部分的 ts 语法。...那么,Babel 是如何处理 TypeScript 代码的呢? Babel 删除了所有 TypeScript,将其转换为常规的 JavaScript,并继续以它自己的方式处理。...', // 引用Typescript插件 { allExtensions: true, // 支持所有文件扩展名,否则在vue文件中使用ts会报错 },...详细介绍可以查看 阮一峰——《持续集成服务 Travis CI 教程》 首先,访问官方网站 travis-ci.org,点击右上角的个人头像,使用 Github 账户登入 Travis CI。

    1.5K30
    领券