我无法让 Epoch 图表库与电子应用程序一起使用
I Can't get Epoch charting library working with electron app
我尝试制作 electron desktop app which uses Epoch 实时图表库。我很好地获得了 Electron 应用程序 运行,并在基本节点环境中制作了一些 Epoch 图表,但是当我尝试将 Electron 和 Epoch 结合起来时,我得到了一个错误:Uncaught TypeError: $(...).epoch is not a function。
我已尝试加载 jquery.js、d3.js 和 epoch.js 来自 index.html 的模块(代码示例 1)或需要它们来自 javascript(代码示例 2)。
<!--Code example 1-->
<script type="text/javascript" src="./js/jquery.min.js"></script>
<script type="text/javascript" src="./js/d3.min.js"></script>
<script type="text/javascript" src="./js/epoch.min.js"></script>
//Code example 2
var $ = require('jquery');
var d3 = require('d3');
var epoch = require('epoch-charting');
我的app.js打开electron如下:
var app = require('app');
var BrowserWindow = require('browser-window');
var mainWindow = null;
app.on('window-all-closed', function() {
if (process.platform != 'darwin') {
app.quit();
}
});
app.on('ready', function() {
mainWindow = new BrowserWindow({
width: 600,
height: 300,
'min-width': 500,
'min-height': 200,
'accept-first-mouse': true,
'title-bar-style': 'hidden'
});
mainWindow.loadUrl('file://' + __dirname + '/index.html');
mainWindow.openDevTools();
mainWindow.on('closed', function() {
mainWindow = null;
});
});
和index.html:
<!DOCTYPE html>
<html>
<head>
<title>Example</title>
<link rel="stylesheet" href="./css/epoch.min.css">
</head>
<body>
<div id="lineChart" class="epoch" style="width: 100%; height: 400px;border:solid 1px #C0C0C0;"></div>
<script>
var $ = require('jquery');
var d3 = require('d3')
var epoch = require('epoch-charting');
var lineChartData = [
{
label: "Series 1",
values: [ {x: 0, y: 100}, {x: 20, y: 1000}]
},
{
label: "Series 2",
values: [ {x: 20, y: 78}, {x: 30, y: 98}]
}
];
$('#lineChart').epoch({
type: 'line',
data: lineChartData
});
</script>
</body>
</html>
您需要将 jQuery 对象传输到 window 上下文,以便将纪元图表模块传输到 "work"
global.jQuery = require('jquery');
require('epoch-charting');
jQuery('#chart').epoch({type: 'time.line', data: data});
我尝试制作 electron desktop app which uses Epoch 实时图表库。我很好地获得了 Electron 应用程序 运行,并在基本节点环境中制作了一些 Epoch 图表,但是当我尝试将 Electron 和 Epoch 结合起来时,我得到了一个错误:Uncaught TypeError: $(...).epoch is not a function。
我已尝试加载 jquery.js、d3.js 和 epoch.js 来自 index.html 的模块(代码示例 1)或需要它们来自 javascript(代码示例 2)。
<!--Code example 1-->
<script type="text/javascript" src="./js/jquery.min.js"></script>
<script type="text/javascript" src="./js/d3.min.js"></script>
<script type="text/javascript" src="./js/epoch.min.js"></script>
//Code example 2
var $ = require('jquery');
var d3 = require('d3');
var epoch = require('epoch-charting');
我的app.js打开electron如下:
var app = require('app');
var BrowserWindow = require('browser-window');
var mainWindow = null;
app.on('window-all-closed', function() {
if (process.platform != 'darwin') {
app.quit();
}
});
app.on('ready', function() {
mainWindow = new BrowserWindow({
width: 600,
height: 300,
'min-width': 500,
'min-height': 200,
'accept-first-mouse': true,
'title-bar-style': 'hidden'
});
mainWindow.loadUrl('file://' + __dirname + '/index.html');
mainWindow.openDevTools();
mainWindow.on('closed', function() {
mainWindow = null;
});
});
和index.html:
<!DOCTYPE html>
<html>
<head>
<title>Example</title>
<link rel="stylesheet" href="./css/epoch.min.css">
</head>
<body>
<div id="lineChart" class="epoch" style="width: 100%; height: 400px;border:solid 1px #C0C0C0;"></div>
<script>
var $ = require('jquery');
var d3 = require('d3')
var epoch = require('epoch-charting');
var lineChartData = [
{
label: "Series 1",
values: [ {x: 0, y: 100}, {x: 20, y: 1000}]
},
{
label: "Series 2",
values: [ {x: 20, y: 78}, {x: 30, y: 98}]
}
];
$('#lineChart').epoch({
type: 'line',
data: lineChartData
});
</script>
</body>
</html>
您需要将 jQuery 对象传输到 window 上下文,以便将纪元图表模块传输到 "work"
global.jQuery = require('jquery');
require('epoch-charting');
jQuery('#chart').epoch({type: 'time.line', data: data});