javascript - 直接在ReactJS中的类定义上设置字段

标签 javascript class reactjs field

在 ReactJS 中这样做是一个好的做法吗?

var Component = React.createClass({
    render: function () {
        return (<div></div>);
    },

    field: 'value', // is this safe?
    method: function () { 
        // do something with field
    }
})

在开始建议我应该使用 this.propsthis.state 之前,对我来说事实并非如此,因为这些字段不会影响渲染不管怎样,它们只是一起工作来控制渲染。

我想像使用常规 javascript“类”一样使用 React 类。

我在这里主要关心的是如何在 React 内部处理这些字段和方法,以及如果这些字段是在实例本身上设置还是直接在原型(prototype)上设置,这根本不适合什么我需要。

我进行了快速测试,似乎字段是在实例上设置的,方法是在原型(prototype)上设置的,这是理想的。但这是预期的和有记录的行为吗?这对于 future 的版本安全吗?

最佳答案

我认为它可以按照您的方式工作并且安全。但是,如果我理解得很好,您将直接在 View 中进行数据计算/转换。 因此,我建议您从 View 中删除此逻辑,并将其处理在 mvc 或 mv* 的模型部分、主干模型或通量存储中。

这样您就不会混合数据转换逻辑和纯渲染。

关于javascript - 直接在ReactJS中的类定义上设置字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32202758/

相关文章:

reactjs - 我们可以将点击处理程序附加到自定义子组件吗

reactjs - react useState 选项值落后于 onChange 选择 1 步

javascript - 上下文菜单选项在哪里定义?

javascript - 添加事件监听器不工作

javascript - 使用 node.js 从 Google Drive 读取二进制文件

c++ - 如何使用模板声明成员函数? (不是模板类)

javascript - PHP 和 JQuery 照片上传和裁剪问题

java - Android:如何在不使用 switch 语句的情况下从不同类调用同名函数?

java - 如何写 "generic wrapper class"? java

javascript - es6 : what is the value of result using spread operator?