0

嗨 Stackoverflow 人。

我试图在测试树枝视图中使用 javascript 图表。这是视图:

    <h1>test</h1>
{% javascripts '@AcmeFooBundle/Resources/public/js/*' %}
  <script src="{{ asset_url }}"  type="text/javascript">
  window.onload = function () {
    var chart = new CanvasJS.Chart("chartContainer", {

  title:{
    text: "Fruits"              
  },
  data: [//array of dataSeries              
    { //dataSeries object

     /*** Change type "column" to "bar", "area", "line" or "pie"***/
     type: "column",
     dataPoints: [
     { label: "banana", y: 18 },
     { label: "orange", y: 29 },
     { label: "apple", y: 40 },                                    
     { label: "mango", y: 34 },
     { label: "grape", y: 24 }
     ]
   }
   ]
 });

chart.render();
  }


     </script>
      <script type="text/javascript" src="{{ asset_url }}"></script>
      {% endjavascripts %}

      <body>
      <div id="chartContainer" style="height: 300px; width: 100%;">
      </div>
    </body>

所以问题是没有安装javascript库,因为它返回给我这个错误消息:

在“PreeditBundle:Default :test.html.twig”。

我尝试过的事情:

- 一步一步按照页面“如何使用assetic进行资产管理-使用控制台命令:assets:install和assetic:dump

感谢您的回答

4

2 回答 2

1

您为元素定义了scr属性而不是使用内联 javascript 代码?script执行以下任一操作:

<script src="..."></script>

或者:

<script> alert(123); </script>

此外{% javascript %},twig 块用于一步渲染多个 javascript 资产。不适用于内联远程 javascript 文件。像这样使用它:

你的模板.html.twig

{% javascript '@AcmeFooBundle/Resources/public/js/*' %}
<script src="{{ asset_url }}"  type="text/javascript">
{% javascript %}
<script>

    window.onload = function () {
    // ...

</script>

此外,您还需要在 config.yml 中添加您的捆绑包,正如@oumlaote 已经说明的那样。

于 2013-08-13T08:49:05.130 回答
1

你必须在 config.yml 中添加你的包。

assetic:
    bundle: [ PreditBundle ]
于 2013-08-13T08:42:57.370 回答