Benim react.js uygulamasının tarihleri görüntüleyeceğini ve istemcinin tarayıcısında/işletim sisteminde ayarlanmış biçimi uygulamak istediğimi varsayalım. Tarihleri gösteren birden çok bileşen var ve aralarındaki kodu paylaşmanın birkaç yolunu kullanabilirim.React.js: yeniden kullanılabilir bileşenler vs mixin yardımcı programı işlevleri
1.Re kullanılabilen React.js bileşenler gibi: React.js Mixins ile ortak
var DateFormatter = require('./../formatters/Date');
<DateFormatter value={invoice.date} />
2.Utility fonksiyonları, yani:
sonravar React = require('react');
module.exports = React.createClass({
render : function(){
if(this.props.value === null || this.props.value===undefined)
return false;
var formattedValue = new Date(this.props.value).toLocaleDateString();
return(
<span>
{formattedValue}
</span>
);
}
});
ve bunları gibi kullanımı
module.exports = {
renderDate : function(dateValue){
if(dateValue === null || dateValue===undefined)
return false;
var formattedValue = new Date(dateValue).toLocaleDateString();
return(
<span>
{formattedValue}
</span>
);
}
}
ve sonra miksini bir bileşene ekleyin ve
gibi bir şey kullanın{this.renderDate(invoice.date)}
Şimdilik, şu an için bu 2 yaklaşım arasında fazla bir fark olmadığı görülmektedir. Ancak toplumun her çözümün artıları ve eksileri hakkındaki görüşlerini duymak isterim. TIA!
karışımları temelde kalıtım şeklindedir. onlar genellikle ne yaptığını bilmeyen programcılar içindir ve tipik olarak, temel işlevleri parametrelerle kullanmanın sadece daha iyi olduğunu görürsünüz. Kavram hakkında endişelenme, sadece Object.assign gibi şeyler içeren javascript'in bir yan etkisi ve aptal bok programcıları istediklerini yapmalarına izin veren araçlar verildiğinde yapacaklar. –