Javascript 截断reactJS中的文本
嗨,我正在使用这个reactJS组件,我想知道reactJS是否有过滤字符串内容的功能:Javascript 截断reactJS中的文本,javascript,reactjs,Javascript,Reactjs,嗨,我正在使用这个reactJS组件,我想知道reactJS是否有过滤字符串内容的功能: var Album = React.createClass({ rawMarkup: function() { var rawMarkup = marked(this.props.children.toString(), {sanitize: true}); return { __html: rawMarkup }; }, render: function() { return (
var Album = React.createClass({
rawMarkup: function() {
var rawMarkup = marked(this.props.children.toString(), {sanitize: true});
return { __html: rawMarkup };
},
render: function() {
return (
<div className='col s12 m6 l4'>
<div className='card'>
<div className='card-image'>
<img style={{minHeight:'220px', maxHeight:'220px' }} src={this.props.image} />
</div>
<div className='card-content' style={{minHeight:'100px', maxHeight:'100px'}}>
<span style={{overflow: 'hidden', textOverflow: 'ellipsis'}}>
{this.props.name}
</span>
</div>
<div className='card-action'>
</div>
</div>
</div>
);
}
});
var Album=React.createClass({
rawMarkup:function(){
var rawMarkup=marked(this.props.children.toString(),{sanitize:true});
返回{uuuhtml:rawMarkup};
},
render:function(){
返回(
{this.props.name}
);
}
});
如何截断span标记内的文本
关于这里有一个可能适合您的解决方案:
React.createClass({
...
myFilter: function(data) {
return data.sanitize()
},
render: function() {
return (
<div>{this.myFilter(this.props.myData)}</div>
)
}
})
React.createClass({
...
myFilter:函数(数据){
返回数据
},
render:function(){
返回(
{this.myFilter(this.props.myData)}
)
}
})
您可以使用
{}
将代码块注入jsx。不过,请感到厌倦,因为jsx对它在这些块中接受的内容非常挑剔您可以将属性传递给函数并返回截断版本:
...
<span style={{overflow: 'hidden', textOverflow: 'ellipsis'}}>
{this.truncate(this.props.name)}
</span>
...
truncate: function(str) {
return str.length > 10 ? str.substring(0, 7) + "..." : str;
}
。。。
{this.truncate(this.props.name)}
...
截断:函数(str){
返回str.length>10?str.substring(0,7)+“…”:str;
}
您是否只想通过CSS实现这一点?(查看span的内联样式)React本身不提供截断字符串的方法。您可以调用此.props.name.substring(0,n)来返回字符串的一部分。您可以直接使用truncate方法。React是唯一的Javascript库,您可以直接使用该语言。您是否可以创建一个fiddle示例,因为我知道React不允许您在html元素之间添加空格,它会自动截断这些空格。我的data.sanitize()
做什么?方法定义在哪里?@daniels我已经更新了答案,以实现一个示例truncate函数。谢谢