未捕获的TypeError:a.setElement不是ext-all.js中的函数

时间:2017-12-26 16:37:42

标签: javascript extjs6

如何解决extjs Version: 6.0.0IEGoogle Chrome中发生的Firefox的以下错误。演示如下:

enter image description here

这是代码。如果删除',locked:true',则问题就消失了。添加locked: true

的正确方法是什么
<!DOCTYPE html>

<html>
<head>
  <meta name="google" content="notranslate" />
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <meta http-equiv="Content-Language" content="en">
  <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
  <title>extjs 6 demo</title>

  <link rel="stylesheet" type="text/css" href='https://cdnjs.cat.net/ajax/libs/extjs/6.0.0/classic/theme-triton/resources/theme-triton-all.css' />
  <script type="text/javascript" src='https://cdnjs.cloudflare.com/ajax/libs/extjs/6.0.0/ext-all.js'></script>

</head>
<body>

<script type="text/javascript">

Ext.require([
    'Ext.grid.*',
    'Ext.data.*',
    'Ext.util.*',
    'Ext.state.*',
    'Ext.form.*'
]);

var store = Ext.create('Ext.data.ArrayStore', {
      storeId: 'store2',
      fields: ['name', 'email', 'phone'],
      groupField: 'name',
       //header: 'Test',
      proxy: {
          type: 'memory',
          reader: {
              type: 'json',
              rootProperty: 'items'
          }
      }
});

store.add([{
      'name': 'Gooooogle',
      "phone": "111-222-3333"
}]);


var grid = Ext.create('Ext.grid.Panel', {
    title: 'Demo Grid',
    store: store,
    columnLines: true,

    autoHeight: true,
    autoScroll: true,
    width: 515,
    enableColumnMove: false,
    enableDragDrop: false,
    enableHdMenu: true,
    enableColumnHide: false,
    columns: [{
        text: 'Company Name',
        dataIndex: 'name'
        ,locked: true
    }, {
        text: 'Phone',
        dataIndex: 'phone'
        ,locked: true
    }, {
        text: 'Grouping Columns',
        columns: [{
            text: 'Phone 1',
            dataIndex: 'phone'
        }, {
            text: 'Phone 2',
            dataIndex: 'phone'
        }, {
            text: 'Phone 3',
            dataIndex: 'phone'
        }]
    }],
    renderTo: Ext.getBody()
});

</script>

</body>
</html>

1 个答案:

答案 0 :(得分:1)

删除autoScroll: true。这是在后续版本中修复的错误。由于网格默认滚动,因此无需指定它。

此外,创建网格的代码应包含在Ext.onReady块中。

注意:scrollable: true可能导致与autoScroll: true

相同的问题