javascript - 函数或类之外的“ super ”-react-native

标签 javascript react-native super

在react-native中工作,我有一大块在不同地方演示过的代码(例如 https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/super )

let Vehicle = {
    debug() {
        return 'Vehicle';
    }
};

let Car = {
    debug() {
        return super.debug() + ' is a Car';
    }
};

无论我如何实例化 Car,我都会收到'super'超出函数或类错误:

//set prototype on object
Object.setPrototypeOf(Car, Vehicle);
Car.debug(); //error
//create instance
let c = Object.create(Car);
//set prototype on instance
Object.setPrototypeOf(c, Vehicle);
c.debug(); //error

为什么会抛出此错误以及如何使用对象调用 super

最佳答案

似乎 setPrototypeOf 在 React Native 中没有兼容 https://facebook.github.io/react-native/docs/javascript-environment.html 。在这里我没有看到 Object.setPrototypeOf 的 babel 插件 https://github.com/facebook/react-native/blob/master/babel-preset/configs/main.js#L16 .

关于javascript - 函数或类之外的“ super ”-react-native,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41923501/

相关文章:

python - 用 Super 构建合适的 Python Facade 类?

javascript - 导入获取请求?

ios - 设置 self 时无法正确更新 float 的 UILabel 文本的函数(仅适用于 super)

javascript - TypeScript 中类和命名空间的区别

javascript - 针对 DOM 的前一个 li 元素不起作用

reactjs - 获取数据后如何更新 props

javascript - Redux 状态 - 添加/编辑/删除对象及其属性

python - python 多重继承中的 super() 用法

javascript - 根据选择框值更改文本

javascript - jQuery 中 HTML 表单标签的有效/无效名称是什么?