我正在运行摩卡测试,最近又升级到Ask-CLI的最新版本。我再次运行测试,现在收到此模块错误。我已经npm安装src和utils无济于事。从我读过的内容来看,模块别名可能不支持@src路径。
我正在调用此命令:
$ ask api simulate-skill -l en-US -t "start my day" -s amzn1.ask.skill.XXXXXXXX-4156-4ca0-b14e-XXXXXXXXXXXX
更新:这似乎是使用
的ask-cli的问题 const CONSTANTS = require('@src/utils/constants');
@src应该找到节点程序包的源,但是我找不到的任何其他程序包中都没有使用此@src。所有其他软件包似乎都使用../../,因此很可能在module-alias找不到任何内容之前,bc不知道如何路由这种新语法
有人知道这种新的@src语法吗?是否有npm模块来帮助路由?
曾为ask-cli 1.1.6工作,但我升级到1.7.2以获得新功能。
Error: Cannot find module '@src/utils/constants'
at Function.Module._resolveFilename (module.js:547:15)
at Function.Module._resolveFilename (/Users/calebgates/WebstormProjects/AutomatedUtteranceTesting/node_modules/module-alias/index.js:49:29)
at Function.Module._load (module.js:474:25)
at Module.require (module.js:596:17)
at require (internal/module.js:11:18)
at Object.<anonymous> (/Users/calebgates/WebstormProjects/AutomatedUtteranceTesting/node_modules/ask-cli/lib/commands/init/index.js:1:81)
at Module._compile (module.js:652:30)
at Module.replacementCompile (/Users/calebgates/WebstormProjects/AutomatedUtteranceTesting/node_modules/nyc/node_modules/append-transform/index.js:58:13)
at module.exports (/Users/calebgates/WebstormProjects/AutomatedUtteranceTesting/node_modules/nyc/node_modules/default-require-extensions/js.js:8:9)
at Object.<anonymous> (/Users/calebgates/WebstormProjects/AutomatedUtteranceTesting/node_modules/nyc/node_modules/append-transform/index.js:62:4)
module.js:549
答案 0 :(得分:0)
我通过在本地项目的依赖项中加入ask-sdk
来解决了这个问题。
答案 1 :(得分:0)
bug在本地安装ask-cli
时得到确认。 bug报告中指出了两种解决方法。
全局安装ask-cli
:
$ npm install -g ask-cli
或安装module-alias
软件包:
$ npm install module-alias
并通过将以下内容添加到package.json文件中,将其配置为在@src
文件夹中寻找ask-cli/lib
:
"_moduleAliases": {
"@src": "./node_modules/ask-cli/lib",
"@root": "./node_modules/ask-cli",
"@test": "./node_modules/ask-cli/test"
}