为什么我在 Travis-CI 上收到关于模块未定义的警告

Why am I getting this warning with Travis-CI about module being undefined?

本文关键字:模块 未定义 警告 于模块 Travis-CI 为什么      更新时间:2023-09-26

在这里找到Travis-CI页面

         } else if (typeof module === 'object' && module.exports) {
                                                      ^ 'module' is not defined.
           module.exports = function( root, jQuery ) {
               ^ 'module' is not defined.
>> 2 errors in 1 file
Warning: Task "jshint:main" failed. Use --force to continue.
Aborted due to warnings.

很明显,这两种情况都是模块受if语句或短路评估的保护。这是完全有效的,为什么它会生成警告?

在使用

变量以使 JSLint 满意之前,您需要声明变量。所以你需要一个

var module;

在相关代码之前声明。

您的困惑源于习惯于运行JavaScript来获得此结果。 正如@Barmar已经说过的,你有一个简单的未声明变量。 JSHINT 没有在 if 语句的前半部分评估检查;只是抱怨module没有被定义。

不要声明module 。您需要将其添加到您的 jshint 配置中

/*jshint node:true */