【QML】警告Name is declared more than once

1. 问题:

qml函数中的不同块中定义同名变量,报警:Name is declared more than once

举例:

c 复制代码
function test(a){
	if(a === "1"){
		var re = 1;
		console.log(re);
	}else{
		var re = 2;	//这里会报警:Name is declared more than once
		console.log(re);
	}
}

2. 原因:

  • qml与C++不同。
  • qml在函数中声明的变量在函数中的任何地方都是可见的,即使在嵌套块或语句条件中声明也是如此。重新声明变量没有效果。

参考:

Qt:QML:JavaScript 和QML 语法错误表

相关推荐
kaixin_learn_qt_ing5 小时前
model/view 筛选功能
qt
佳児素花痴╮8 小时前
Qt速通2
开发语言·qt
心态还需努力呀9 小时前
把 Flameshot 编译进鸿蒙 PC:一次 Qt C++ 截图工具的源码级移植实战
c++·qt·harmonyos
CodeMaker80810 小时前
规则更规范,应用却起不来:我重新理解了 Qt Agent Skills
qt
楚莫识11 小时前
Qt show()、raise()、activateWindow() 调用顺序区别
qt·pyqt
励志不掉头发的内向程序员12 小时前
【LibreCAD 2D架构】从 addHistory 到 RS_UndoCycle:LibreCAD 里的两套 History 与撤销机制
开发语言·c++·qt·学习·系统架构
kaixin_learn_qt_ing1 天前
【银河麒麟下】 安装达梦数据库 + 使用Qt访问达梦数据库
qt
mengzhi啊1 天前
缓存类CacheDataManager把临时数据存入json。做成插件·
qt·缓存·json
尘客-追梦1 天前
Day 01:插件化之前,先看清 ABI 这堵墙
开发语言·c++·qt
Quz1 天前
QML SwipeView:实现一个简单的图片浏览器
qt