Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/unity3d/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
CanvasJS转换在MeteorJS中不起作用_Meteor_Canvasjs - Fatal编程技术网

CanvasJS转换在MeteorJS中不起作用

CanvasJS转换在MeteorJS中不起作用,meteor,canvasjs,Meteor,Canvasjs,我正在尝试将一个基本的CanvasJS脚本转换为meteor格式,这样我就可以在一个基于实时数据构建的应用程序中添加一个反应图表。但是,当我转换代码时,它在渲染时变为空白。此时,我删除了“计时器”代码,该代码将动态更新页面,以使静态视图正常工作。如果您有关于如何使用template.rendered创建计时方面的提示,那将是非常棒的(尝试过也失败了) 下面是HTML和JS…提前感谢 原始代码@ index.html: <head> <script src="http:/

我正在尝试将一个基本的CanvasJS脚本转换为meteor格式,这样我就可以在一个基于实时数据构建的应用程序中添加一个反应图表。但是,当我转换代码时,它在渲染时变为空白。此时,我删除了“计时器”代码,该代码将动态更新页面,以使静态视图正常工作。如果您有关于如何使用template.rendered创建计时方面的提示,那将是非常棒的(尝试过也失败了)

下面是HTML和JS…提前感谢

原始代码@

index.html:

<head>
    <script src="http://canvasjs.com/assets/script/canvasjs.min.js"></script>       
</head>
<body>
    {{> canvaschart}}
</body>

<template name="canvaschart">
    <div class="chartContainer" style="height: 300px; width: 600px;"></div>
</template>

您可以在Meteor.startup中运行代码。该方法在呈现任何模板之前执行,因此您的容器div还不在DOM中。您需要在模板的
onRendered
方法中执行代码。换言之,替换

Meteor.startup(function() {...});


我试过了,但还是没有渲染。我添加了一个图表列表来查看它是否工作(包括html中的模板);它变好了。奇怪的是CanvasJS图表没有呈现,但如果我在Firefox中“检查元素”,它就会出现。我试过IE,但效果不太好。如果我在一个非meteor html文件中直接使用javascript,它就可以正常工作。现在我不知所措…我找到了答案…将代码移到Template.canvaschart.OnRendered中…现在可以正常工作了。
Meteor.startup(function() {...});
Template.canvaschart.onCreated(function() {...});