ionic v2 webpack 加载器未加载 json 依赖项
ionic v2 webpack loader not loading json dependencies
我们正在通过克隆 ionic-conference-app 将应用程序原型从 ionic 移植到 ionic2,它在本地运行良好。
我们现在正在尝试为我们拥有的 Ethereum JS 包装器库构建一个包装器 class。重现错误的最简单方法是向 src/services/ethereum-service.ts
中的 ionic-conference-app 添加一个新的 class
import eth from 'ethereumjs-util';
export default class EthereumService {
constructor() {}
sha3() : Object {
return eth.sha3("12345454");
}
}
然后在某些组件中,例如 src/pages/about/about.ts
中的关于页面添加以下内容
export class AboutPage {
private ethereum : EthereumService;
constructor() {
this.ethereum = new EthereumService();
}
}
运行 npm run ionic:serve
终端中的一切都可以顺利编译,没有错误。但是应用程序没有加载,控制台中出现以下错误消息。
Uncaught Error: Cannot find module "./messages.json" /Users/my.name/my-app/node_modules/secp256k1/lib/index.js:4
at webpackMissingModule
...
如果我们更仔细地查看 secp256k1 依赖项,我们会发现它无法加载以下行。
var messages = require('./messages.json')
我们已尝试将 webpack/json-loader 添加为 package.json
的依赖项。
我们正在使用 "@ionic/app-scripts": "0.0.44"
。
如何才能正确导入此依赖项?
我的队友明白了。通过在 package.json
.
中更新为 "@ionic/app-scripts": "0.0.46"
解决了这个问题
我们正在通过克隆 ionic-conference-app 将应用程序原型从 ionic 移植到 ionic2,它在本地运行良好。
我们现在正在尝试为我们拥有的 Ethereum JS 包装器库构建一个包装器 class。重现错误的最简单方法是向 src/services/ethereum-service.ts
import eth from 'ethereumjs-util';
export default class EthereumService {
constructor() {}
sha3() : Object {
return eth.sha3("12345454");
}
}
然后在某些组件中,例如 src/pages/about/about.ts
中的关于页面添加以下内容
export class AboutPage {
private ethereum : EthereumService;
constructor() {
this.ethereum = new EthereumService();
}
}
运行 npm run ionic:serve
终端中的一切都可以顺利编译,没有错误。但是应用程序没有加载,控制台中出现以下错误消息。
Uncaught Error: Cannot find module "./messages.json" /Users/my.name/my-app/node_modules/secp256k1/lib/index.js:4 at webpackMissingModule ...
如果我们更仔细地查看 secp256k1 依赖项,我们会发现它无法加载以下行。
var messages = require('./messages.json')
我们已尝试将 webpack/json-loader 添加为 package.json
的依赖项。
我们正在使用 "@ionic/app-scripts": "0.0.44"
。
如何才能正确导入此依赖项?
我的队友明白了。通过在 package.json
.
"@ionic/app-scripts": "0.0.46"
解决了这个问题