我正在写一个babel插件.我遇到了需要使用索引运算符的地方.这是我想要获取[Symbol.something](b)的代码,但是,我似乎找不到解决方法.我试图做这样的事情:@H_404_2@
@H_404_2@
types.callExpression(
types.memberExpression(types.Identifier('a'),types.memberExpression(types.Identifier('Symbol'),types.Identifier('something'))
),[types.Identifier('b')]
)
但是,它引发错误TypeError:MemberExpression的期望节点的Property属性为类型[“ Identifier”,“ PrivateName”],但是改为g
ot“ MemberExpression”.我用Google搜索了我的问题,但似乎找不到解决方法.
最佳答案
您应该使用
原文链接:https://www.f2er.com/js/531155.htmlMemberExpression
的计算参数.@H_404_2@
例如,@H_404_2@
@H_404_2@
types.MemberExpression( types.Identifier('foo'),types.Identifier('bar') );
@H_404_2@
types.MemberExpression( types.Identifier('foo'),types.Identifier('bar'),true );
@H_404_2@
types.CallExpression(
types.MemberExpression(
types.Identifier('a'),types.MemberExpression(types.Identifier('Symbol'),types.Identifier('something')),true
),[types.Identifier('b')]
);
这将生成一个[Symbol.something](b).