zhminjian 2022-05-12 17:25 采纳率: 28.6%
浏览 252

两个ts文件不能使用同名const吗?本意是两个文件中的变量、常量应该互不干扰。

如题。使用两个同名常量会报错。

------a.ts
const greeting: string = "abc";
const temp: { x: number, y: number } = { x: 5, y: 77 };
console.log(temp);

const point: { x: number } = temp;
console.log(point);

------b.ts
const greeting: string = "abc";
const temp: { x: number, y: number } = { x: 5, y: 888};
console.log(temp);

错误信息:

img

  • 写回答

3条回答 默认 最新

  • zhminjian 2022-05-12 17:31
    关注

    也就是如何将每个文件都变成一个独立的模块。其中的变量、常量等都是独立的,和其他文件的同名变量、常量无关。
    按说,一个独立的文件就是一个模块,(ECMAScript)他们作用域不同,同名变量、常量是不同的东西,不应该报错啊,为什么报错?

    是不是需要什么设置啊

    这个问题解决了。ts文件分两种,一种是全局文件,另一种是模块文件。如果文件中有export或import就认为是模块文件,否则认为是全局文件。全局文件中的常量等不能同名。在文件中加入export {},就会变成模块文件,就不会报错了,导出空,不影响程序。

    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 5月12日

悬赏问题

  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料