import()
识别为函数。JSHint 无法识别
import("module/path.mjs") //Returns Promise of export object
作为函数并抛出E053和E021 。
此函数用于为不以“.mjs”结尾的脚本导入模块。
有关更多信息,请参见此 MDN 页面。
我不知道这个功能是否在提案中,它只适用于主流浏览器(Firefox、Chrome 等)和 node.js。
不使用 .jshintrc 文件,使用全局扩展设置。
{
"jshint.lintHTML": true,
"jshint.options": {
"esversion": 9,
"varstmt": true,
"unused": true,
"undef": true,
"singleGroups": true,
"eqeqeq": true,
"freeze": true,
"lastsemic": true,
"leanswitch": true,
"latedef": true,
"maxdepth": 4,
"noreturnawait": true,
"nonbsp": true,
"noarg": true,
"maxparams": 3,
"maxerr": 10,
"maxcomplexity": 15,
"node": true
}
}
感谢报告! 我们还没有实现对动态导入的支持,但我们计划这样做(它绝对满足我们对新语言功能的政策)。 这使得这更像是一个功能请求而不是错误报告,所以我稍微修改了问题的标题——希望你不介意。
如果您(或其他任何人)想尝试实现这一点,那么我很乐意提供指导!
@jugglinmike考虑到这是一个 es2020 提案,您如何设想某人能够切换此功能? 我假设会有一个esversion: 11
,我认为它也需要支持所有其他 es2020 提案(无效合并、可选链接等)。
我可能会考虑为这个特定提案提供支持,因为它会有所帮助。
esversion: 11
对我来说听起来很合适,@almercier! 实现所有新的语言功能是一项艰巨的任务,我不希望有人自己承担所有这些。 如果您想专注于import
表达式,那么我们可以并行处理其他功能(或发布部分支持新语言版本的版本)。
我已经更新了 Test262 的子模块,以便我们更好地覆盖新的语言功能。 我还为新的次要版本创建了一个跟踪分支; 这就是我们应该登陆新功能的地方。
今天发布的JSHint 2.13.0 版包括对动态导入的支持。 请务必通过esversion: 11
或更高版本更新您的配置以选择加入新的语言功能。
最有用的评论
感谢报告! 我们还没有实现对动态导入的支持,但我们计划这样做(它绝对满足我们对新语言功能的政策)。 这使得这更像是一个功能请求而不是错误报告,所以我稍微修改了问题的标题——希望你不介意。
如果您(或其他任何人)想尝试实现这一点,那么我很乐意提供指导!