特别是我在最新版本的Google Chrome中对此进行了测试,但是我怀疑在Edge/firefox/Safari中是相同的(最后我知道Edge和Firefox隐藏了模块在实验javascript标志中)
在" globals.js"中,我有一个let scale。
// inside global.js
let scale = 1;
在另一个模块中,我想调整比例
// inside another js file
import { scale } from "../JS/globals.js";
scale = Math.min( scale + ((scale + delta) * speed), target);
但是我遇到了错误的"分配到常数变量"。
我想象的一种明显的方法是导出一个名为set_scale
的函数// back in globals.js
export function set_scale (value) { scale = value };
我已经为Globals.js的其他一些变量做到了这一点。但是我想知道是否有人还有其他方法来克服出口/导入,尤其是如果我允许我避免做更多的事情来导出/导入。
您可以按照globals.js文件进行遵循:
export default {scale: 1}
在其他模块中,以此方式使用它:
import global from "global"
global.scale = ...
... = global.scale