gpt4 book ai didi

javascript - 将上下文传递给交互式 Node shell 会导致 "TypeError: sandbox argument mus have been converted to a context"

转载 作者:太空宇宙 更新时间:2023-11-04 00:48:18 25 4
gpt4 key购买 nike

我想启动一个交互式 Node 外壳,其中一些对象已经初始化。然而,以下代码会导致:

var repl = require('repl')

var x = 11,
y = 21

var con = {}
con.x = x
con.y = y

repl.start('> ').context = con

当我开始并尝试访问上下文变量之一时会发生这种情况:

node .
> y
TypeError: sandbox argument must have been converted to a context.
at TypeError (native)
at REPLServer.defaultEval (repl.js:250:27)
at bound (domain.js:280:14)
at REPLServer.runBound [as eval] (domain.js:293:12)
at REPLServer.<anonymous> (repl.js:412:12)
at emitOne (events.js:77:13)
at REPLServer.emit (events.js:169:7)
at REPLServer.Interface._onLine (readline.js:210:10)
at REPLServer.Interface._line (readline.js:549:8)
at REPLServer.Interface._ttyWrite (readline.js:826:14)

但是repl.start('> ').context.y = y 可以工作。

我做错了什么?

最佳答案

Object.assign(repl.start('> ').context, con)

当输入repl.start('> ').context时,对象相当大。我猜想将 context 分配给自定义对象会丢失一些属性。

关于javascript - 将上下文传递给交互式 Node shell 会导致 "TypeError: sandbox argument mus have been converted to a context",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33673999/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com