2016-10-01 59 views
1

改變CSS這是我原來的代碼:陣營使用鐳下DIV

的CSS將改變所有的p標籤下<div className="TEST">

Home.js

export default class Home extends Component { 
    render() { 
    return (
     <div className="TEST"> 
      <p>1234567</p> 
      <p>1234567</p> 
      <p>1234567</p> 
      <a>qqqqqqqqqqqq</a> 
     </div> 
    ); 
    } 
} 

風格。 css

.TEST p { 
    color:#ffa; 
} 

,如果我使用鐳,我需要每個p<div className="TEST">
有一些方法我可以添加樣式<div className="TEST">只是一個時間來改變P個色彩像style.css的方式添加???

import Radium from 'radium'; 

let styles = { 
    home:{ 
    test:{ 
    color:'#ffa', 
    } 
} 

export default class Home extends Component { 
    render() { 
    return (
     <div className="TEST"> 
      <p style={styles.test}>1234567</p> 
      <p style={styles.test}>1234567</p> 
      <p style={styles.test}>1234567</p> 
      <a>qqqqqqqqqqqq</a> 
     </div> 
    ); 
    } 
} 
+0

不知道,如果是明確的給我,但我猜你正在尋找動態地添加新樣式你的'樣式'對象,然後在'render()'方法中使用它們,對嗎? – dzv3

+0

是的,我想知道如果我使用鐳,是否意味着我需要在每個標籤上添加樣式,或者有其他方法,我可以只設置一次 – user2492364

回答

0

您可以使用鐳的Style組件(多見於:https://github.com/FormidableLabs/radium/tree/master/docs/api#style-component

import React, { Component } from 'react' 
import Radium, { Style } from 'radium' 

export default class Home extends Component { 
    render() { 
    return (
     <div> 
     <Style scopeSelector=".TEST p" rules={{ color: '#ffa' }} /> 
     <div className="TEST"> 
      <p>1234567</p> 
      <p>1234567</p> 
      <p>1234567</p> 
     </div> 
     </div> 
    ) 
    } 
} 
+0

謝謝!我有另一個問題。當你寫組件時,你會用鐳取代css文件嗎?或者你使用他們兩個? – user2492364

+0

在我上一個項目中,我使用Radium完全替換了內聯樣式的css文件。不過,你可以保留兩者。 –