grunt-contrib-jasmine angularjs 模块不可用错误
grunt-contrib-jasmine angularjs module-not-available error
我有一个如下所示的脚本:
angular.module('Game').constant('WHITE_PIECE', '\u26C0')
... more lines ...
.constant('WHITE_KING', '\u26C1')
(end of file)
当我 运行 grunt jasmine
时,我得到了经典错误 Module 'Game' is not available! You either misspelled...
。奇怪的是,我肯定正在声明模块。如果我将代码移动到声明 'Game'
模块的文件末尾,它就可以工作。如果我将代码移动到另一个文件的末尾,该文件声明了 'Game'
模块的服务,它就可以工作。我的浏览器没有错误。这个 phantomjs 是愚蠢的吗?它是 G运行t-contrib-jasmine 中的错误吗?
我在这个文件和声明游戏模块的文件之前放置了 console.log 语句;这表明常量文件在游戏文件之前被解释。但是,我认为 Angular 足够聪明,可以解决这个问题。我需要告诉 g运行t-jasmine-contrib 加载我的脚本的确切顺序吗?
基于更多的谷歌搜索,我认为这是一个错误而不是错误。唯一的解决方案是强制执行正确的脚本解释顺序,不幸的是,这否定了 jasmine globstar 源模式的便利性(例如 **/*.js
)。
我有一个如下所示的脚本:
angular.module('Game').constant('WHITE_PIECE', '\u26C0')
... more lines ...
.constant('WHITE_KING', '\u26C1')
(end of file)
当我 运行 grunt jasmine
时,我得到了经典错误 Module 'Game' is not available! You either misspelled...
。奇怪的是,我肯定正在声明模块。如果我将代码移动到声明 'Game'
模块的文件末尾,它就可以工作。如果我将代码移动到另一个文件的末尾,该文件声明了 'Game'
模块的服务,它就可以工作。我的浏览器没有错误。这个 phantomjs 是愚蠢的吗?它是 G运行t-contrib-jasmine 中的错误吗?
我在这个文件和声明游戏模块的文件之前放置了 console.log 语句;这表明常量文件在游戏文件之前被解释。但是,我认为 Angular 足够聪明,可以解决这个问题。我需要告诉 g运行t-jasmine-contrib 加载我的脚本的确切顺序吗?
基于更多的谷歌搜索,我认为这是一个错误而不是错误。唯一的解决方案是强制执行正确的脚本解释顺序,不幸的是,这否定了 jasmine globstar 源模式的便利性(例如 **/*.js
)。