私のプロジェクトでImmutable.jsを使用し、プレーンなJS構造を使用しないようにしています。機能を持つオブジェクトに不変性を使用する必要がありますか?
しかし、関数を含むオブジェクトだけを不変のものに変換することが意味をなさないかどうかはわかりません。
のは、私がMathUtility.js
を持っているとしましょう:
export default {
sum (a, b) {
return a + b
},
min (a, b) {
return a - b
}
//etc. More utils methods
}
は、代わりにこのような何かを行うには何の意味です:
export default Immutable.fromJS({
sum (a, b) {
return a + b
},
min (a, b) {
return a - b
}
//etc. More utils methods
})
私のPOVから、それが機能からデータを分割するのは難しい(データオブジェクトではありませんJSでは時折)、それを行うにはポイントがありませんが、わかりません。
ありがとうございます。
もしあなたが 'MathUtility 'のようなヘルパー関数になるのであれば、あなたは'不変 'は必要ないと言います。冗長だと思われる –
もっと難しくしたい場合は、['Object.freeze'](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/freeze)を使うことができますあなたのユーティリティオブジェクトを後で変更する人がいると思います。 –
私は、各機能を別々にエクスポートしたいと思います。これは、拘束力のある永続化を実現するだけでなく、 – marzelin