我正在尝试开发一个基于this tutorial
的小电子角度2应用程序看起来他们在捆绑webpack时出现了一些错误,因为我无法在我的渲染器组件中导入/导入电子遥控器。
在我的AppComponent中,我执行以下操作
import {remote} from 'electron';
我的Webpack配置
var path = require('path');
var webpack = require('webpack');
var CommonsChunkPlugin = webpack.optimize.CommonsChunkPlugin;
var webpackTargetElectronRenderer = require('webpack-target-electron-renderer');
var config = {
debug: true,
devtool: 'source-map',
entry: {
'angular2': [
'rxjs',
'reflect-metadata',
'angular2/core',
'angular2/router',
'angular2/http'
],
'app': './src/app/renderer/bootstrap'
},
output: {
path: __dirname + '/build/',
publicPath: 'build/',
filename: '[name].js',
sourceMapFilename: '[name].js.map',
chunkFilename: '[id].chunk.js'
},
resolve: {
extensions: ['','.ts','.js','.json', '.css', '.html'],
packageMains: ['webpack', 'browser', 'web', 'browserify', ['jam', 'main'], 'main']
},
module: {
loaders: [
{
test: /\.ts$/,
loader: 'ts',
exclude: [ /node_modules/ ]
}
]
},
plugins: [
new CommonsChunkPlugin({ name: 'angular2', filename: 'angular2.js', minChunks: Infinity }),
new CommonsChunkPlugin({ name: 'common', filename: 'common.js' })
]
};
config.target = webpackTargetElectronRenderer(config);
module.exports = config;
Webpack会引发以下错误
ERROR in ./src/app/renderer/components/app/app.ts
(1,22): error TS2307: Cannot find module 'electron'.
答案 0 :(得分:4)
解决了它
const electron = require('electron');
const remote = electron.remote;
答案 1 :(得分:0)
尝试将target: "electron-renderer"
添加到webpack配置中module.exports
对象的底部。 (我是通过Angular CLI通过ng eject
创建的)
答案 2 :(得分:-1)
你是TypeScript的新手吗?你安装了吗?您可以通过以下方式安装它:
npm install -g typescript
你的解决方案是一个java脚本解决方案,如果你正在寻找它,这是一个好的黑客,但如果你想使用TypeScript,那么你应该能够使用'import'使它工作。
执行以下教程: https://www.npmjs.com/package/typescript
另外,检查: TS2307: Cannot find module 'angular2/core' while importing Angular2 on TypeScript