Я столкнулся с проблемой стиля настройки для атрибута html div в reactjs без jsx.
Я вычисляю высоту для div из calculateAvailableHeight(), чтобы содержимое div управлялось с помощью overflow: auto. но, к сожалению, я не могу установить стиль для тега div.
версии:
"react": "^16.6.3",
"react-bootstrap": "^0.32.4",
"react-dom": "^16.6.3",
Вот код responsejs для компонента реакции
import React,{Component} from "react";
import {Row,Col,Tab,Nav,NavItem} from 'react-bootstrap';
import {calculateAvailableHeight} from './../../lib/uiComponentLib
var heightList = calculateAvailableHeight(50);
var ccUserStyle = {
height : heightList ,
overflow:"auto !important",
};
вывод для heightList: 568px! важно
class UserList extends Component{
render(){
console.info("Reaching inside ", heightList );
return (
<div style = {ccUserStyle}>
<Tab.Container id = "sidebarTabContainer" defaultActiveKey = "first" >
<Row className = "clearfix">
<Col sm = {12} className = "cc-no-padding">
<Nav bsStyle = "pills" justified>
<NavItem eventKey = "first">User</NavItem>
<NavItem eventKey = "second">Group</NavItem>
</Nav>
</Col>
<Col sm = {12} className = "cc-no-padding" style = height= {heightList} >
<Tab.Content animation>
<Tab.Pane eventKey = "first">
Userlist
</Tab.Pane>
<Tab.Pane eventKey = "second">Group list</Tab.Pane>
</Tab.Content>
</Col>
</Row>
</Tab.Container>
</div>
);
}
}
Я использую ccUserStyle object для установки стиля div. Но после рендеринга компонента я не вижу атрибутов стиля для тега div.
Пожалуйста, предложите и помогите мне исправить эту проблему.
Заранее спасибо.



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


ccUserStyle - это объект уже, но это:
<div style = {{ccUserStyle}}>
... оборачивает его в объект Другая (с использованием сокращенной записи свойств), поэтому свойства стиля не обнаруживаются, поскольку они находятся на style.ccUserStyle.height, а не на style.height.
Просто удалите один слой {}:
<div style = {ccUserStyle}>
Я пробовал то же самое, но он вообще не работает, я не могу установить атрибут JSX HTML в реакции
очень жаль, снова обновил код. Можете ли вы проверить это еще раз.
Спасибо @TJCrowder за руководство, но я решил проблему, удалив строку «px! Important» из «568px! Important».
Поскольку response16 действительно строг и позволяет избежать ошибок типа данных.
Так что только Number инициализируется высотой HttpAttribute JSX в CSSProperties.
эта проблема связана только с версиями react16 для встроенного стиля.
Пожалуйста, дайте мне знать, если вы найдете другое решение для того же.
@ T.J. Crowder, сэр, пожалуйста, подтвердите, что мой ответ правильный или неправильный.
Просмотрите свой пост, исправив опечатки и убедившись, что код является точным отражением вашего реального кода (в приведенном выше коде есть по крайней мере одна значительная синтаксическая ошибка, которую вы можете увидеть из выделения кода, которую вы, вероятно, представили при копировании ее на свой вопрос, но мы не можем этого знать наверняка). Также убедитесь, что код размечен правильно (обратите внимание на
}за пределами блока кода).