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

【JS】308- 深入理解ESLint

小沈反驳道,这个 lint 工具非让我去掉分号,我在学校的时候,老师就教我分号是必不可少的,没有分号的代码是不完美的。导师无奈的笑了笑,打开了小沈的实习评分表,在团队合作一项中勾选『较差』。...JavaScript 是一个动态的弱类型语言,在开发中比较容易出错。因为没有编译程序,为了寻找 JavaScript 代码错误通常需要在执行过程中不断调试。...但是,事情往往没有我们想象中那么简单,ESLint 的规则不仅只有关闭和开启这么简单,每一条规则还有自己的配置项。如果需要对某个规则进行配置,就需要使用数组形式的参数。...eslint:plugin 目录 创建好项目之后,就可以开始创建一条规则了,幸运的是 generator-eslint 除了能够生成插件的模板代码外,还具有创建规则的模板代码。...打开之前创建的 eslint-plugin-demo 文件夹,在该目录下添加一条规则,我希望这条规则能检测出我的代码里面是否有 console ,所以,我给该规则命名为 disable-console。

1.3K50

大厂前实习生被威胁,“关闭开源项目,不然就告你”

没想到,却收到了来自前老板的律师函警告: 这是抄袭,下架,要不就告你。你实习的时候我们还是一家小公司,我们现在刚融资2000万美元,我不介意雇佣顶级律师对付你。...我在Lively Kernel项目上工作了十年,该项目最初由Sun Microsystems的Dan Ingalls创建。...他们真的认为他们有一个原创的想法吗? 另一方面,一家在今年2月刚拿到2000万美元融资的公司,居然被一个刚毕业大学生业余时间写的开源项目威胁到。 这技术门槛也着实有点低了吧。...Amjad在回应中也提到了这一点,他坚持认为复制前老板产品这种行为,是很不道德的。...这就涉及到了一个法律概念,非竞争协议: 用人单位和被雇用者劳动合同中约定保守用人单位的商业秘密和知识产权相关保密事项。 不过现实情况是,他们所在的加州并不承认非竞争协议,所以以上威胁很可能无效。

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

    【JavaScript】ESlint & Prettier & Flow组合,得此三神助,混沌归太清

    Flow真是眼前一亮,我就想,TypeScript挺好的,但或许也给人带来了一些烦恼,一旦用了TS,就意味着任何时候都要强制类型检查,我觉得,选择JavaScript还是TypeScript就变成了这样一个问题...(耐用指的是维护性),但Flow帮我们找到了折中方案:类型检查这东西,我们在想用和需要用的时候用,同时不想用也可以不用,就好比就是手里有1000块,那我们就刚好去买1000块钱的衣服 Flow的使用 /...同时也容易集成到已有的项目中 Flow的缺点 这家伙简直和JS一毛一样,既有有好用的优点,同时呢,却也有一些明显的缺点。...Flow的安装(Webpack集成) (注意⚠️:你需要确保你有一个可运行的webpack配置,同时在module.rules配置项中引入了babel-loader解析所有js文件) 过程 下载...在每次启动项目前都检查Flow是否有报错,例如我就在在启动脚本中添加如下语句,它每次会先检查flow有没有报错,然后才用Node启动项目 "scripts":{ "start":"flow check

    1.1K20

    Yarn 4.0 正式发布,性能大幅提升!

    大家好,我是 ConardLi。 10.23 日,Yarn 团队经过一年多的努力,中间经过了 53 个候选版本,终于发布了 Yarn 4.x 的稳定发行版本。...当我们在项目中定义了依赖项的范围(例如使用 "^" 或 "~" 等符号指定的版本范围),Yarn 会根据这些范围来解析并选择合适的版本安装到项目中。...但是,有时在解析依赖项时可能会出现问题,例如范围可能无法解析到满足所有依赖项的兼容版本,或者范围太宽松导致安装了过多的依赖项。...然而,有时这样的情况会导致冲突和问题。为了解决这个问题,Yarn 引入了 JavaScript 约束引擎。 使用 JavaScript 约束引擎,我们可以定义一些规则来限制工作区之间依赖项的版本关系。...另外,它不会再像以前那样打印与同级依赖关系相关的警告,现在只在可操作的情况下打印警告: 另一个例子是 yarn config 命令,它会显示一个新的树形显示,现在还接受任意数量的设置作为位置参数,让我们选择您希望看到的内容

    1.5K30

    无人机没有防火墙,可能会成为最大的安全威胁

    无人机成为安全威胁 最近一项研究显示,武装无人机已经是2017年最大的网络安全威胁之一。...无人机与物联网设备一样缺少防火墙 与其他科技产品一样,厂商总是走一条“先污染再治理”的道路,对它们来说,如果安全在研发过程中比例过重,就会形成巨大阻力,而且会影响营收,因此安全问题总是在出事之后才有人重视...笔者圣诞节与一位在科技公司任首席技术安全官(CISO)的朋友喝酒时,听到了他这样的吐槽:“公司开圣诞派对从来不邀请我们安全团队。”...这种现象在物联网圈也非常常见,因此去年黑客便借助这一漏洞瘫痪了半个美国的网络。 在最近的一项演示中,黑客用一台无人机黑掉了飞利浦的物联网灯泡。...而一旦政府部门介入,又会不同程度的扼杀创新,但如果没有详细的规定,无人机这种将威胁提升到三维空间的产品又将成为整个社会的心腹大患。

    70550

    马斯克猛烈抨击 ChatGPT引轰动:“这不是我想要的”

    作为联合创始人之一,马斯克对 OpenAI 的现状非常不满:“OpenAI 最初是作为一家开源(这就是为什么我把它命名为‘Open’AI)的非营利性公司而创建的,为了抗衡谷歌,但现在它已经成一家闭源的营利性公司...他补充说,汽车、飞机和医药必须遵守监管安全标准,但人工智能还没有任何规则或法规来控制其发展。“坦率地说,我认为我们需要规范人工智能安全,”马斯克说。...马斯克并不是唯一一个警告过人工智能潜在危害的人。2014 年,史蒂芬霍金警告说人工智能可能终结人类。...然后到了 2018 年,马斯克在 OpenAI 官方博客上宣布离开公司董事会。...人们也感觉到负责任地发展一项技术有多么重要,因此马斯克的这次言论得到了更多人的重视,推特用户纷纷发表评论:“疯狂的商业世界充满了假装做慈善工作的骗子。”“WokeGPT”......

    56360

    将React项目从webpack升级到Vite

    在之前,已经很多朋友已经升级到了vite,但是大部分都是vue的项目,那么今天我们把之前webpack的react项目升级到vite!...为此,为了让大家少踩坑,我先把china-dev.cn这个网站项目升级到了vite ?...对于在线画图功能,可能没有什么影响,但是跟在线编写javascript这个功能影响挺大,因为之前使用的库,会跟webpack绑定,目前不支持vite,于是我更换了技术栈,但是效果反而更好了~,这说明,跟...,都是我一条一条精挑细选出来的,因为我不喜欢用不清楚别人细节的东西,这套规则我也希望大家用下去,每一条都有注释 rules: { semi: ['error', 'always'],.../src/types/*"] } 遇到的问题 第三方库之前跟webpack插件有绑定,而vite不支持,最后更换了技术栈 vite热更新问题,这个问题应该很多人都会遇到,但是我踩坑一天后,就没有再遇到了

    3.2K30

    网易裁员,让保安把身患绝症的我赶出公司。我在网易亲身经历的噩梦!

    说他没有说上午通知我,下午就让我走,还耐着性子跟我沟通了这么多,没有要HR和IT直接来收我的机器,收我的工牌让我走对吗? 接着说我只有两个选择,一是主动签字,二是被动签字。 我问他如果我不签字呢?...我说我都不知道内容是什么,而且我在住院不方便,不能签收。 结果HR说“收个稿件你觉得会影响你养病?”“如果你觉得现在收不方便,那我们寄回你老家,让你家人帮你收也可以的。”...至此,主管、HR总监和HR三个人均以保安驱赶作威胁,也说明这不是个人临时决定的行为,而是一项自上而下用来压迫员工的方针。 即便再次被威胁,最后从会议室离开的时候我还是先问HR总监我可以回去了吗?...其中就有我之前频繁看到,怀疑是在监视我的人。 虽然此前已经被用保安驱赶威胁过3次了,可真的发生时我还是被这阵仗吓到了。 我想我但凡有一丁点的阻拦,那就又不知道是什么后果了。...在我患病之后,我没有感受到他们哪怕一丁点的关怀,有的只是算计和威胁。 我想这些才是网易的规则吧。 离开时我也验证了一件事。

    58521

    AWS分叉了我的开源项目,但他们连声感谢也没说

    Nolet 在一条采访消息中回应称,“(至少对我来说)问题的关键并不在于许可要求什么,而是大家重不重视开源精神。” “事实上,AWS 内部就没人意识到这是种特别让人恼火的行为吗?...“但开源的核心终究关乎人与社区,我个人认为我们应该做得更多,承认 Tim 与其他维护者们的出色工作,努力支持他们在 Headless Recorder 项目中的成就。...一位开发者给 Matt Asay 留言说:“我确实认为,作为一家数万亿美元的公司,在没有与原始创建者交谈的情况下分叉一个开源项目,并将其宣布为其平台的一项新功能,这样的行为有很多值得诟病的地方。...去年,AWS 推出了 Open Distro for Elasticsearch,此举直接威胁到了 Elasticsearch 作为开源项目开展自有业务的生存空间。...并且双方的冲突在 2019 年里达到了白热化的程度。去年底,在回应《纽约时报》关于 AWS 如何复制并整合其他厂商原创软件的相关报道时,AWS 副总裁 Andi Gutmans 表达了批评意见。

    43750

    6个React Hook最佳实践技巧

    遵循这一条规则,可以确保组件中的所有状态逻辑在源代码中都能清晰可见。...2 使用 ESLint 的 React Hooks 插件 React 团队还创建了一个名为 eslint-plugin-react-hooks 的 ESLint 插件,以帮助开发人员在自己的项目中以正确的方式编写...它有两条简单的规则: react-hooks/rules-of-hooks react-hooks/exhaustive-deps 第一条规则只是强制你的代码符合我在第一个技巧中说明的 Hooks 规则...React Context 是一项功能,它提供了一种通过组件树向下传递数据的方法,这种方法无需在组件之间手动传 props。...虽然本文肯定还有遗漏的内容,但我希望以上分享的技巧能多少帮助你在项目中以正确的方式编写 React Hooks。

    2.6K30

    面对RISC-V的挑战,利润率能到60%?

    Arm在招股书中还警告称,其“Neoverse 系列处理器中性能最高的处理器达到或超过了美国和英国出口管制制度下的性能阈值,从而在出口和交付给中国客户之前触发了出口许可证要求。”...在去年底的全球RISC-V峰会上,高通公司产品管理总监Manju Varma曾称,Arm是“遗留架构”,并表示在遗留架构中,引入的功能并没有真正为最终消费者增加价值。...基于此,高通在2019年就已经将RISC-V应用到了其骁龙865 SoC当中的微控制器中,截至目前已经出货了6.5亿个RISC-V内核。...,对于Arm的威胁无疑将会是越来越大。...在上市感谢信中,Rene Haas还表示,“我要再次感谢我们的员工和我们的生态系统伙伴为今天的成就所做的贡献。我深知这是一条漫长之路,途中充满许多始料未及的曲折,但我们为此成为更强大、更有韧性的公司。

    31330

    TypeScript 4.9 发布!重点新特性解读 ~

    但是,这个写法的前提是我们用到的对象有明确的类型,如果这个对象的属性没有明确的类型呢?...TypeScript,我们只需要定义一个 Context 类型,但是由于 packageJSON 没有明确的类型定义,再使用 in 进行类型收窄就有问题了: interface Context {...,所以 packageJSON 的类型从 unknown 收窄到了 object ,而 object 类型上不存在 name 属性,就会引发报错。...== NaN) // true 这其实并不是 JavaScript 特有的问题,因为任何包含 IEEE-754 浮点数的语言都有相同的行为;但 JavaScript 的主要数字类型就是浮点数,并且 JavaScript...欢迎在评论区和我留言;如果这篇文章帮助到了你,欢迎点赞和关注。

    81720

    Nue:一个挑战Next.js的新静态站点生成器

    这是一条旧原则,即您的站点应该适用于所有浏览器,CSS 和 JavaScript 仅用于增强功能。...这最终意味着您的站点应该能够在没有 JavaScript 的情况下工作——但我怀疑这在今天是否是一个合理的期望。 现在,立即吸引我的地方是它似乎是 markdown 优先的。...因此,启动一个新的 Warp shell,我使用 Bun 安装 Nue 本身: …并创建模板项目: 最终,它启动了一个服务器,并将我带到了 http://localhost:8083/ 的站点。...页眉和页脚是通过 *@global/layout.html* 和 标签排列的: 它们读取 *site.yaml* 中的数据并从中创建这些页脚项。...让我们看一下最新的条目: front matter 用于在页面列表中为条目创建一个小的框,包含“thumb”图像和标题文本,我们在上面的网页上看到了这些内容。

    12810

    GAN之父离开苹果重返谷歌,SpaceX最新估值达1250亿美元,美国官方公布UFO进展,今日更多大新闻在此

    又到了一周当中最不上不下的一天,那么科技圈还有哪些有意思的新鲜事,能提个神醒个脑? 日报君在此呈上。...Goodfellow称: 我坚持认为灵活办公才是对我团队最好的政策。 这些年,Goodfellow与谷歌“分分合合”。...罗永浩称债还没还完 在“交个朋友”官方微信号发布的“电商学苑聊天局”第三弹中,有网友提问罗永浩:你现在有多少存款? 对此,罗永浩回应称: 基本上没有什么存款,因为到现在债还没有全部还完。...他在“我的青铜时代”节目中表示:还款进度超出预期,预计能在今年底还清债务,比原计划的5年提前了2年。...该小组主席André Carson警告称:UFO是一种潜在的国家安全威胁。这个之前被边缘化的问题,亟需引起重视。

    27820

    NPM 7:这才算是真正的更新

    终于,在 Node 的最新版本(版本 15)中,我们等到了 NPM 的版本 7。这一版本对其内部架构进行了重大改进,并提供了一些非常有趣的新特性。...在本文中,我会介绍两个引起我注意并激发我的想象力的新特性。第一个特性会改变我们处理所有项目依赖项的方式,而第二个特性会优化一个之前必须手动完成的流程。...准备好之后,你要做的就是在每个项目中都创建一个 package.json,并在其中声明其所需的依赖项。 然后,你从根文件夹运行 npm install,让 NPM 完成剩余的工作。...如果你不太熟悉这个术语(以前我也不熟),这里就简单介绍一下:对等依赖项和普通的依赖项几乎没什么区别,它们并没有定义一个严格的要求,而是声明: 你的软件包与另一个模块的特定版本兼容。...如果该模块已经安装并且是正确的版本,则不要执行任何操作。 如果找不到该模块或版本存在冲突,则向开发人员显示一条消息,警告他们这一事实,此外什么也不做。

    1.7K30

    “npm audit”安全工具的安全警告泛滥成灾,害码农们分心!

    Facebook的软件工程师Dan Abramov发出了呼吁,要求让一款特别烦人的 JavaScript安全工具保持静默——该工具的创建者或多或少也认为确实有改进的空间。...此后,使用npm的JavaScript开发人员只需输入npm audit,就会收到针对其项目的依赖项树的安全分析结果——依赖项树指被导入到项目的各个相互关联的库,那样就没必要从头开始重写通用函数。...但是对于Abramov来说,npm audit会在风险实际上不需要担心的情况下生成安全警告,警告过多对任何相关人员都没有帮助。...它没有报告易受攻击模块的数量,而是报告了依赖易受攻击模块的其他模块的数量,数量之大常常超过依赖项树中的模块数量。”...正在考虑的进一步调整代码也许可以提供一种手动方式来解决审计警告,从而改善这种情形,就像Abramov呼吁有一种方法可以杜绝某些传递性依赖项生成安全警告那样。

    80720

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

    在 TypeScript 中使用 ESLint§ 安装 ESLint§ ESLint 可以安装在当前项目中或全局环境下,因为代码检查是项目的重要组成部分,所以我们一般会将它安装在当前项目中。...规则的取值一般是一个数组(上例中的 @typescript-eslint/consistent-type-definitions),其中第一项是 off、warn 或 error 中的一个,表示关闭、警告和报错...后面的项都是该规则的其他配置。 如果没有其他配置的话,则可以将规则的取值简写为数组中的第一项(上例中的 no-var)。...Prettier 的配置项很少,这里我推荐大家一个配置规则,作为参考: // prettier.config.js or .prettierrc.js module.exports = { //...VSCode 没有显示出 ESLint 的报错§ 检查「文件 => 首选项 => 设置」中有没有配置正确 检查必要的 npm 包有没有安装 检查 .eslintrc.js 有没有配置 检查文件是不是在

    2.6K20

    更多的 JavaScript 控制台功能

    你可能在 JavaScript 项目中用了console.log。这是一种查看变量值或程序运行中发生的事情的便捷方法。...但是 JavaScript console 对象还有许多其他的功能,可以在处理项目时提供帮助。本文将会介绍一些我的最爱,希望你在工作时记得使用它们!...请注意,此处的例子适用于在浏览器中运行的 JavaScript。这与在 Node.js 中运行的 JavaScript 相似,但是在 Node.js 中的行为可能略有不同。...从本质上讲,它与前面的功能相同,但是该消息在控制台中带有黄色背景,并带有警告图标(至少在 Chrome Dev Tools 中是这样)。...它们可以帮我们进行开发,以便可以根据类型过滤消息;查看表中的一项或多项;或者将它们组合在一起或折叠它们,以便在需要时将其隐藏。它将改善你的工作流程。

    1.4K10

    15 个初学者 JavaScript 项目来提高你的前端技能!

    太棒了,在第三个项目中,我们将创建一个应用程序,允许我们通过单击按钮来浏览图片。在编程中,我们称这些照片轮播或图像滑块。...数据结构 功能 对象 要点和想法在构建这个项目时,我了解到使用 JavaScript 我们可以创建一个内置对象并使用内置函数从中检索时间。...事实上,如果我没有那个项目的代码可以依靠,我将不得不再次观看抽认卡教程视频以检查我是否正确地完成了这个项目。当然,这个项目确实有一些独特的功能,因此弄清楚如何对这些部分进行编码是一项挑战。...总的来说,我从这个项目中学到了很多东西,因为它结合了我们迄今为止所学的一切。 11. 计时器 让我们构建一个计时器。预备,准备,开始!...我实际上已经在视频游戏中看到了这种效果。现在我可以在构建自己的游戏时使用它。就代码而言,有趣的是了解到我们并不总是需要 CSS 来制作很酷的动画。

    1.8K20

    jQuery 升级踩坑大全

    前段时间我就主导了这件事情,把公司里我们组负责的项目jQuery版本从1.4.2升级到了jQuery 1.11.3。jQuery官方也为类似升级工作提供了jQuery Migrate插件。...其中第三种错误其实就不仅仅是警告了,jQuery会直接抛出一个错误,停止javascript代码的继续执行。...上面提到的第四个错误,jQuery.fn.attr(props, pass) is deprecated这个警告在真实项目中从未见到过,看了一下源码,触发该警告的jQuery写法很少见,可忽略。...需要指出的是:下面的问题在我的实际项目中从来没有碰到过,比较少见,但也无法保证一定不会出现在你的项目中,仅供感兴趣的程序员们参考吧。...它用来创建一个jQuery的副本。该方法在jQuery 1.7版本开始就已经不再使用。 6.

    3.9K90
    领券