- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我使用 Sencha CMD 和 ExtJS 5.1 创建了一个 MyApp 应用程序。现在我正在更改 Main.js
和 MainController.js
文件。只有我想更新 center region
选项卡,单击 west region
树面板的一个部分。
为此,我使用了一个监听器,该监听器调用 MainController.js
中的 function handleClick()
但无法识别该函数。在 MainController.js
中存在另一个函数,我创建了一个按钮来执行 onClickButton()
函数并正常工作。我做错了什么?
主要.js
/**
* This class is the main view for the application. It is specified in app.js as the
* "autoCreateViewport" property. That setting automatically applies the "viewport"
* plugin to promote that instance of this class to the body element.
*
* TODO - Replace this content of this view to suite the needs of your application.
*/
Ext.define('MyApp.view.main.Main', {
extend : 'Ext.container.Container',
requires : [
'MyApp.view.main.MainController',
'MyApp.view.main.MainModel'
],
xtype : 'app-main',
controller : 'main',
viewModel : {
type : 'main'
},
layout : {
type : 'border'
},
items : [{
xtype : 'treepanel',
bind : {
title : 'Menu'
},
region : 'west',
root : {
text : 'Raiz',
expanded : true,
children : [{
text : 'Opcion 1',
leaf : false,
children: [{
text : 'Opcion 1-1',
leaf : true
}]
}, {
text : 'Opcion 2',
leaf : true
}, {
text : 'Opcion 3',
leaf : true
}
],
},
listeners: {
itemclick: function (node, rec){
var id = rec.get("id");
var name=rec.get('text');
console.log('id'+id+' texto: ' + name);
this.handleClick(name);
}},
scope: 'controller',
width : 250,
split : true,
}, {
region : 'center',
xtype : 'tabpanel',
items : [{
title : 'Tab 1',
html : '<h2>Content appropriate for the current navigation.</h2>'
},
{
title : 'Tab 2',
html : '<h2>Content appropriate for the current navigation.</h2>'
},
{
title : 'Tab 3',
html : '<h2>Content appropriate for the current navigation.</h2>'
}
]
}
]
});
主 Controller .js
/**
* This class is the main view for the application. It is specified in app.js as the
* "autoCreateViewport" property. That setting automatically applies the "viewport"
* plugin to promote that instance of this class to the body element.
*
* TODO - Replace this content of this view to suite the needs of your application.
*/
Ext.define('MyApp.view.main.MainController', {
extend : 'Ext.app.ViewController',
requires : [
'Ext.window.MessageBox'
],
alias : 'controller.main',
onClickButton : function () {
Ext.Msg.confirm('Confirm', 'Are you sure?', 'onConfirm', this);
},
onConfirm : function (choice) {
if (choice === 'yes') {
//
}
},
handleClick : function (name) {
var tab = Ext.ComponentQuery.query('tabpanel')[0];
var num = 0;
switch (name.trim()) {
case "Opcion 1":
num = 0;
break;
case "Opcion 2":
num = 1;
break;
case "Opcion 3":
num = 2;
break;
default:
break;
}
tab.setActiveTab(num);
}
});
当我更新 MainController.js Sencha CMD 时显示:
[INF] -----------------------
[INF] Waiting for changes...
[INF] -----------------------
[INF] Appending content to C:\xampp\htdocs\MyApp/bootstrap.js
[INF] Writing content to C:\xampp\htdocs\MyApp/bootstrap.json
[INF] merging 219 input resources into C:\xampp\htdocs\MyApp\build\development\MyApp\resources
[INF] merged 0 resources into C:\xampp\htdocs\MyApp\build\development\MyApp\resources
[INF] merging 0 input resources into C:\xampp\htdocs\MyApp\build\development\MyApp
[INF] merged 0 resources into C:\xampp\htdocs\MyApp\build\development\MyApp
[INF] writing sass content to C:\xampp\htdocs\MyApp/build/temp/development/MyApp/sass/MyApp-all.scss.tmp
[INF] appending sass content to C:\xampp\htdocs\MyApp/build/temp/development/MyApp/sass/MyApp-all.scss.tmp
[INF] appending sass content to C:\xampp\htdocs\MyApp/build/temp/development/MyApp/sass/MyApp-all.scss.tmp
[INF] executing compass using system installed ruby runtime unchanged MyApp-all.scss
[INF] Refresh complete in 4 sec. at 11:23:13 AM
[INF] -----------------------
[INF] Waiting for changes...
最佳答案
代替:
listeners: {
itemclick: function (node, rec){
var id = rec.get("id");
var name=rec.get('text');
console.log('id'+id+' texto: ' + name);
this.handleClick(name);
}},
scope: 'controller',
写:
listeners: {
itemclick: function (node, rec) {
var id = rec.get("id");
var name=rec.get('text');
console.log('id'+id+' texto: ' + name);
this.handleClick(name);
},
scope: 'controller'
},
关于javascript - handleClick() 不是 Sencha CMD 和 Extjs 5.1 的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31805490/
这个问题在这里已经有了答案: Calling a javascript function in JSX: why does calling a function without the () wor
我有一个 React 父组件,它使用 map 函数呈现 QuestionCard 组件列表。我试图在每个 QuestionCard 组件中放置一个 onClick 函数(我希望这个函数在父组件中,而不
我使用的是 Chart.js 版本 2.8.0。我想在任何数据点上添加单击事件以深入了解该数据点的更多详细信息。我在折线图的选项下添加了以下内容: options: { events: ['cli
实际上,我在 UserDataPresentation 类中使用 isAvatarUserMenuOpen 属性来了解模式是否打开。我使用此状态生成影响 onClick 打开和关闭模式的条件。但我需要
我试图将 onClick 事件传递给子组件,但没有触发任何事件。我想要做的是传递 data-id 和每个输入的值来更新每个子组件的值。但我无法让它工作。 这是 fiddle 。当我点击按钮时,没有任何
我正在尝试使用 react-router 使表行功能类似于 Link 。 我不断收到错误无法读取未定义的属性“handleClick” handleClick(user) { this.rout
我相信保持代码一致是很重要的事情。 有时我会使用不同的处理程序名称(使用 Javascript)来混淆我的代码。 事件处理程序的正确名称是什么? onClick对比 handleClick ? 最佳答
我正在尝试构建一个赛马应用程序并且是新手,当用户单击“开始”按钮让骑师参加比赛时,我正在努力处理点击事件。当我删除 handleClick 函数(如下面的注释)时,骑师会在我重新加载页面时自动进行比赛
我无法像这样获取鼠标坐标 function handleClick() { getMouseCoordinates(); calculateDistance(); handle
我会直奔主题。这是我在 ReactJS 应用程序中的组件: class BooksList extends Component { constructor(props) { super(p
我正在使用 React 创建一个简单的计算器,并且尝试向按钮添加 onClick 函数。我在 tictactoe 游戏中使用了 React 教程中使用的相同技术,但是当我单击任何按钮时,我只会收到以下
我正在使用 React 创建一个简单的计算器,并且尝试向按钮添加 onClick 函数。我在 tictactoe 游戏中使用了 React 教程中使用的相同技术,但是当我单击任何按钮时,我只会收到以下
我正在学习 React,并且正在尝试做一个小项目。该项目显示 jsonPlaceholder 的用户列表,并希望使其能够编辑字段。 我有一个加载列表的 div,另一个带有可编辑字段的隐藏 div 和一
我正在使用氩模板的切换按钮: argon template docs 我想在切换按钮上放置一个handleChange,但它不起作用,这里是我的代码: Show value
我是 ReactJS 新手,正在使用 React JS 和 laravel API 创建登录页面。当我在插入电子邮件地址和密码后单击登录按钮时,它显示上述错误。 这是我的代码 import React
这是我的 react 代码 handleRemoveClick = material => { let idMaterial = material.material_id; if(this.s
我正在用 React 编写一个简单的博客组件。该组件从第二个文件获取帖子并使用 map(特别是两个嵌套的 map)呈现内容和主题标签。我试图创建一个部分,点击时主题标签会突出显示,因此我正在关注 th
我正在浏览 React 文档,并尝试根据相应元素(与同一键关联)的点击来更改 map 中一个元素的条件。使用看起来像这样的handleClick: handleClick: function(e) {
这个问题已经有答案了: setState is not updating state: ReactJS (1 个回答) 已关闭 5 年前。 我正在开发一个小组件,它本质上是一个按钮,允许用户单击以查看
我使用 Sencha CMD 和 ExtJS 5.1 创建了一个 MyApp 应用程序。现在我正在更改 Main.js 和 MainController.js 文件。只有我想更新 center reg
我是一名优秀的程序员,十分优秀!