如何解决为什么我不能从伪构建器 (AddMethod) 中修改构建环境?
我需要在多个构造环境中修改一组变量,所以我决定最简洁的方法是创建一个方法来实现这一点。
我尝试在构造环境对象中使用 AddMethod
而不是 vanilla python 函数,因为它似乎是在 scons
中执行此类操作的方式。
以下是我测试了在构造环境中更改变量的几种方法的示例:
env1 = Environment(VAR='foo')
def changeVal(env,newval):
env['VAL'] = newval
env1.AddMethod(changeVal,'ChangeVal')
env2 = env1.Clone(VAR='bar')
env3 = env2.Clone()
env3['VAR'] = 'baz'
env4 = env3.Clone()
env4.ChangeVal('qux')
print(env1['VAR'],env2['VAR'],env3['VAR'],env4['VAR'])
结果是 foo bar baz baz
而我期望的是 foo bar baz qux
。
这是为什么?
解决方法
很确定你的例子有错别字:
// TS 4.2
const lit = `arrayObject.${index}.lastName`;
// const lit: "arrayObject.0.lastName" ?
特别地
register<Data>(`arrayObject.${index}.lastName`); // okay
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。