'caller','callee',and 'arguments' properties may not be accessed on strict mode functions or the arguments objects fon calls to them
时间: 2023-11-08 08:49:50 浏览: 103
这个错误是因为在严格模式下,访问'caller','callee'和'arguments'属性会报错。解决这个问题的方法有两种:
第一种方法是修改引入的mui.js文件,将其中使用到'caller','callee'和'arguments'的代码改成不使用这些属性的方式。然而,这个方法可能比较困难,因为需要对mui.js源代码进行修改。
第二种方法是禁用webpack打包时的严格模式。你可以通过安装插件"babel-plugin-transform-remove-strict-mode"并在.babelrc配置文件中添加"transform-remove-strict-mode"插件来实现。这样就可以解决该问题。
希望这些解决方法对你有帮助!
相关问题
TypeError: 'caller', 'callee', and 'arguments' properties may not be accessed on strict mode functions or the arguments objects for calls to them
这个错误通常发生在 JavaScript 中,它是因为在严格模式下访问了 "caller"、"callee" 或 "arguments" 属性,或者尝试在严格模式下对这些属性进行调用。在严格模式下,这些属性被视为不安全的语言特性,因此不允许访问。要解决这个问题,你需要确保所有代码都不会在严格模式下访问这些属性,或者你可以考虑不使用严格模式。
异常:TypeError: 'caller', 'callee', and 'arguments' properties may not be accessed on strict mode functions
这个错误通常是在使用严格模式下访问不允许访问的属性时出现的。在严格模式下,访问"caller"、"callee"和"arguments"属性会导致TypeError异常。
在严格模式下,函数被限制在自己的作用域内,不允许访问其它函数的调用栈信息。因此,尝试访问"caller"和"callee"属性会引发异常。
解决这个问题的方法是避免在严格模式下对这些属性进行访问。可以使用其他方式来实现相同的功能,例如使用命名函数表达式或函数参数来获取函数的引用,而不是使用"caller"和"callee"属性。
如果你需要访问函数的参数,可以使用命名参数或使用arguments对象来获取参数值。但请注意,在严格模式下,arguments对象也不允许访问"callee"属性。
总之,确保你的代码在严格模式下不会访问"caller"、"callee"和"arguments"属性,以避免出现该异常。