Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/apache-kafka/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Typescript TS2364:赋值表达式的左侧无效_Typescript_Ecmascript 6 - Fatal编程技术网

Typescript TS2364:赋值表达式的左侧无效

Typescript TS2364:赋值表达式的左侧无效,typescript,ecmascript-6,Typescript,Ecmascript 6,a是一个可变数组,为什么我不能分配给它 福茨 导出let a:any[]; 酒吧 从'/foo'导入{a}; a=[5,6,7]; 一个包含一个可变数组,因此您可以对其进行变异: a.splice(0, a.length, 5, 6, 7); console.log(a); 但是,bar中的a是导入的绑定,不能重新分配。这就是为什么它是一个语法错误 但是,您可以在foo中指定a,它的行为就像一个普通变量。如果您希望能够更改原始范围(foo.ts)内数组的值,则可以执行以下操作: export

a
是一个可变数组,为什么我不能分配给它

福茨
导出let a:any[];
酒吧
从'/foo'导入{a};
a=[5,6,7];

一个
包含一个可变数组,因此您可以对其进行变异:

a.splice(0, a.length, 5, 6, 7);
console.log(a);
但是,
bar
中的
a
是导入的绑定,不能重新分配。这就是为什么它是一个语法错误


但是,您可以在
foo
中指定
a
,它的行为就像一个普通变量。

如果您希望能够更改原始范围(
foo.ts
)内数组的值,则可以执行以下操作:

export var a = {
    arr: []
}
然后在
bar.ts
中:

import {a} from './foo';

a.arr = [5,6,7];

事实上,这也适用于
const
。我以前使用过一个对象,这就是为什么我没有得到这个错误…是的,
const
可以正常工作,因为你不需要更改引用中的内容。“TypeError:无法读取未定义的属性'splice',检查生成的JS是否为foo.ts它是空的,只有一个
“use strict”line@AT:啊,对不起,我被字体符号弄糊涂了。您必须执行导出:any[]=[…]
当然可以实际导出数组。