Handsontable 相关错误找不到模块 numbro、moment、pikaday、ZeroClipboard
Posted
技术标签:
【中文标题】Handsontable 相关错误找不到模块 numbro、moment、pikaday、ZeroClipboard【英文标题】:Handsontable related error cannot find modules numbro, moment, pikaday, ZeroClipboard 【发布时间】:2017-08-24 15:45:00 【问题描述】:我添加了 handsontable-pro、numbro、moment、pikaday 和 ZeroClipboard 在我的package.json
依赖项中,例如:
"dependencies":
"numbro": "^1.9.0",
"moment": "^2.14.1",
...
并将这些库导入到我的 angular1.5 app.ts
文件中,如下所示:
import 'handsontable-pro';
import 'numbro';
import 'moment';
...
在运行 npm install
、npm run build
并构建和运行我的项目后,我在 Chrome 的开发人员工具控制台中收到以下错误:
Uncaught Error: Cannot find module 'numbro'
at newRequire (handsontable.js:48)
at handsontable.js:55
at Object.23.cellTypes (handsontable.js:4238)
at newRequire (handsontable.js:53)
at handsontable.js:55
at Object.125.../node_modules/hot-builder/node_modules/handsontable/src/browser (handsontable.js:21831)
at newRequire (handsontable.js:53)
at outer (handsontable.js:61)
at handsontable.js:66
at handsontable.js:22
还有其他模块。有什么想法吗?谢谢。
【问题讨论】:
【参考方案1】:运行这个命令
npm install angular-handsontable
这将安装所需的依赖项。
https://handsontable.github.io/angular-handsontable/quick-start
【讨论】:
【参考方案2】:其中一些依赖项需要全局公开。如果你使用 webpack,你可以这样做:
module:
rules: [
test: /(\.js)|(\.jsx)$/,
exclude: /node_modules/,
use: [
loader: 'babel-loader',
options:
presets: ['react', 'es2015']
]
,
test: require.resolve('numbro'),
use: [
loader: 'expose-loader',
options: 'numbro'
]
,
test: require.resolve('moment'),
use: [
loader: 'expose-loader',
options: 'moment'
]
,
test: require.resolve('pikaday'),
use: [
loader: 'expose-loader',
options: 'Pikaday'
]
,
test: require.resolve('zeroclipboard'),
use: [
loader: 'expose-loader',
options: 'ZeroClipboard'
]
]
,
【讨论】:
以上是关于Handsontable 相关错误找不到模块 numbro、moment、pikaday、ZeroClipboard的主要内容,如果未能解决你的问题,请参考以下文章
每当我尝试在 VS Code 中运行任何与 npm 相关的命令时,都会出现路径错误:[找不到模块]
动态图像路径在 Require 函数中不起作用:找不到此相关模块
如何修复错误“找不到此相关模块:* ./src/main.js in multi (webpack)-dev-server”在 npm run serve in vue3.x with typescr