Javascript 如何修复或消除ASP.NET Razor应用程序中的ESLint定义要求?
我刚刚将ASP.NET Core 2.0 Razor应用程序升级到2.1,以获得EF Core 2.1的新功能。这是我在ASP.NET中的第一个主要项目,来自WinForms和PHP背景 我正在尝试遍历并清除错误列表,但是我得到了ESLint错误,而且我以前从未使用过ESLint,所以我不知道从哪里开始。谷歌在这个问题上也没有太大帮助 以下是警告:Javascript 如何修复或消除ASP.NET Razor应用程序中的ESLint定义要求?,javascript,c#,asp.net,razor,eslint,Javascript,C#,Asp.net,Razor,Eslint,我刚刚将ASP.NET Core 2.0 Razor应用程序升级到2.1,以获得EF Core 2.1的新功能。这是我在ASP.NET中的第一个主要项目,来自WinForms和PHP背景 我正在尝试遍历并清除错误列表,但是我得到了ESLint错误,而且我以前从未使用过ESLint,所以我不知道从哪里开始。谷歌在这个问题上也没有太大帮助 以下是警告: Warning react/jsx-sort-prop-types (ESLint) Definition for rule 'react/js
Warning react/jsx-sort-prop-types (ESLint) Definition for rule 'react/jsx-sort-prop-types' was not found
Warning react/wrap-multilines (ESLint) Definition for rule 'react/wrap-multilines' was not found
Warning react/require-extension (ESLint) Definition for rule 'react/require-extension' was not found
我甚至不知道这些是什么意思,谷歌搜索它们并没有启发我,它们似乎也没有指向特定的代码行
这些警告到底想告诉我什么?如果您没有使用ESLint,并且使用的是Visual Studio,则可以转到: 工具->选项->文本编辑器->JavaScript/TypeScript->Linting->常规 从那里,您可以取消选中“enableeslint”复选框,并检查该工具的全局配置文件 我正在使用Visual Studio 2017(15.8.4)查找此菜单
如果您想继续使用EsLint(这很好),可以在.js文件的开头禁用并重新启用EsLint,以避免出现这些警告,并且仍然可以对文件的其余部分进行EsLint检查: /*eslint禁用*/ /*eslint使能*/ 对于无法控制的文件,如jquery.js、bootstrap.js等,只需在文件开头的这一行完全禁用即可: /*eslint禁用*/
您只需要记住在更新后再次添加这一行。如果您正在使用ESLint,并且不想向所有文件添加代码,那么您可以禁用ESLint配置文件中的三条规则。实际上有两种方法可以做到这一点 很长的一段路是找到配置文件,它位于c:\Users{username}.eslintrc。您可以使用文本编辑器打开它,找到规则并将值设置为0(零),这意味着禁用。例如:
"react/jsx-sort-prop-types": 0,
较短的方法是转到Tools/Options/Text Editor/'JavaScript/TypeScript'/Linting/General。该页面上有一个按钮“Reset global.eslintrc”。如果单击该按钮,您将获得一个更新版本的.eslintrc配置文件,该文件中根本没有这些规则,假设您有一个最新版本的Visual Studio
无论使用哪种方法,都需要重新启动VisualStudio,然后错误就会消失
我认为问题的出现是因为您(和我)拥有此文件的旧版本(.eslintrc),其中的规则不受支持或不再适用于随ESLint for Visual Studio附带的React插件。我在没有安装npm模块的项目中遇到了这些错误,而且肯定没有反应。我认为升级到VisualStudio可能不会覆盖此文件,以防您更改它
也可以将.eslintrc文件放入项目文件夹,它将覆盖默认位置的设置。因此,对于在多台计算机上看到此问题的企业项目,您只需签入一个.eslintrc即可解决此问题。但是,如果你在一台新机器上干净地安装了VisualStudio,我认为你不会看到问题,所以我不确定这是否有必要
我使用Visual Studio 2017 15.8.1对此进行了测试。ESLint得到了相当大的支持。如果你打算在这个项目中使用ESLint,看起来这是React插件的页面:这是我目前解决这个问题的方法。但是我想对我的脚本进行验证,所以我正在寻找一个更持久的解决方案。React插件的文档有帮助吗?我想你在用这个,但我自己不太了解。不。。。我没有明确使用React。也许它像Bootstrap一样被植入了这个项目?我不这么认为。但它很可能与您的一个依赖项一起出现。如果这不是你工作的重点,我不会担心的。如果你想做的话,你可以随时回去学习这些特定的规则/插件。你能解释一下(或者发一个链接)为什么这样做吗?如果这些是合法的错误,那么我想正确地纠正它们。但是,即使这只是ESLint的一个已知错误,我正在构建一个企业系统,因此我有很多文件需要这种处理,除非我可以将其放入_Layout.cshtml或其他文件中。它只是在.js文件开始时停止ESLint,然后在检查文件开始后恢复。我从你那儿买的。老实说,我不知道那些信息。这可能是一个bug,因为我不使用react。是的,你是对的,这对企业系统来说是一个很大的麻烦。我为我的项目制作了它,我不得不更改30-40.js文件,这花了一些时间,但我能够删除所有警告。这对我来说非常有用。谢谢对其他人来说,启用/禁用确实需要是文件中的前两行。如果需要进一步修改文件中的规则,可以在此之后包括其他禁用规则。正是这样。谢谢你的描述性回答!