簡體   English   中英

未捕獲的TypeError:controller.setView不是EXTJS中的函數

[英]Uncaught TypeError: controller.setView is not a function in EXTJS

我想在單擊按鈕時重定向/彈出窗體我將按鈕處理程序命名為OnRoutesClick但是我收到了一些錯誤

請幫我找出錯誤,謝謝你提前瀏覽器中的錯誤截圖

reportMenuController.js

Ext.define('Traccar.view.reportMenuController', {
    extend:'Ext.app.ViewController',
    alias:'controller.reportMenu',

requires:[
'Traccar.view.dialog.Server',
'Traccar.view.dialog.User',
'Traccar.view.dialog.reportBox'
],

onRoutesClick: function () {
        var dialog = Ext.create('Traccar.view.dialog.reportBox', {
            selfEdit: true
        });
        dialog.down('form').loadRecord(Traccar.app.getUser());
        dialog.lookupReference('testNotificationButton').setHidden(false);
        dialog.show();
    },

reportBox.js

Ext.define('Traccar.view.dialog.reportBox', {
    extend:'Traccar.view.dialog.BaseEdit',

requires: [
'Traccar.view.ClearableComboBox',
'Traccar.view.dialog.reportBoxController',
'Traccar.view.UnescapedTextField'
],

controller:'reportBox',
title:'Report',
text:'Report',


items:{
    xtype:'form',
   items: [{
    xtype:'fieldset',
    title:Strings.sharedRequired,
    items:[{
        xtype:'unescapedTextField',
        fieldLabel:'name'
    }]
   }]
}
});

瀏覽器出錯

Uncaught TypeError: controller.setView is not a function
    at constructor.applyController (ext-all-debug.js:53043)
    at constructor.setter [as setController] (ext-all-debug.js:10545)
    at Ext.Configurator.configure (ext-all-debug.js:11134)
    at constructor.initConfig (ext-all-debug.js:12643)
    at constructor (ext-all-debug.js:66310)
    at new constructor (ext-all-debug.js:13136)
    at eval (eval at getInstantiator (ext-all-debug.js:15045), <anonymous>:3:8)
    at Object.create (ext-all-debug.js:15489)
    at constructor.onRoutesClick (reportMenuController.js:50)
    at Object.callback (ext-all-debug.js:8705)
  1. 在視圖中,對於控制器密鑰,應提及控制器別名。 因此,由於您的別名是“reportMenu”,您必須提及相同的內容。
Ext.define('Traccar.view.dialog.reportBox', {
    extend:'Traccar.view.dialog.BaseEdit',

requires: [
'Traccar.view.ClearableComboBox',
'Traccar.view.dialog.reportBoxController',
'Traccar.view.UnescapedTextField'
],

controller:'reportMenu',
title:'Report',
text:'Report',


items:{
    xtype:'form',
   items: [{
    xtype:'fieldset',
    title:Strings.sharedRequired,
    items:[{
        xtype:'unescapedTextField',
        fieldLabel:'name'
    }]
   }]
}
});
  1. 您的控制器應與視圖位於同一級別的文件夾中。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM