在查看Intern.io示例时,我没有遵循路径语法。

例如:

define([
    'intern!object',
    'intern/chai!assert',

'!'是怎么回事字符?
// Non-functional test suite(s) to run in each browser
suites: [ 'intern/node_modules/dojo/has!host-browser?tests/utils' ],

有人可以解释上述套件路径的路径引用吗?

谢谢。

最佳答案

带有感叹号的模块ID为AMD loader plugins。感叹号之前的部分是loader插件模块的模块ID,感叹号之后的部分是特定于插件的信息,插件模块使用该信息来决定要做什么。

  • intern!object加载intern插件模块,然后将其告知“object”(这会导致插件加载对象接口(interface)API)
  • intern/chai!assert加载intern/chai插件模块(并告诉它加载断言风格的API)
  • intern/dojo/has!host-browser?tests/utils(此中间不应包含node_modules)从Intern的内部Dojo副本中加载dojo/has模块,并在tests/utils功能检测测试为true(否则不加载任何内容)的情况下,使用它来加载host-browser
  • 08-25 10:20
    查看更多