难受就摸头盖骨

vue 动态样式

<p :style="{width:'4px',height: '24px',background: '#f7ce51'}"></p>
<p:style="{height: '400px','overflow-y': 'auto','background-color': '#f3f3f3',padding: '15px'}"></p>
 
1、三元运算符判断
<div :style="{ 'opacity': !editableCheckNum ? 0.5 : 1 }">555</div>
 
2、动态设置class
<div :class="activeMachineId === machineItem.machineId?'activeStyle':'machineBar'" v-for="(machineItem,machineIndex) in machineList" @click="clickMachineEvent">    
    <p>{{machineItem.name}}</p>    
    <p :style="machineStatusStyle(machineItem.status)"></p>
</div>
 
3、方法判断
    <div class="machineBigBar machineList">    
        <div class="machineBar" v-for="(machineItem,machineIndex) in processItem.machineList" :key="machineIndex">        
            <p>{{machineItem.name}}</p>        
            <p :style="machineStatusStyle(machineItem.status)"></p>    
        </div>
    </div>  
    methods:{    
        machineStatusStyle(e){        
            console.log('值',e)        
            if(e === 1){            
                return {                
                    width:'14px',height:'16px',                
                    background:"url('/src/images/time.png') no-repeat center",                 
                    marginLeft: '10px'            
                }        
            }else if(e === 2){            
                return {                
                    width:'14px',
                    height:'16px',                
                    background:"url('/src/images/time.png') no-repeat center",                 
                    marginLeft: '10px'            
                }        
            }else if(e === 3){            
                return {                
                    width:'14px',
                    height:'16px',                
                    background:"url('/src/images/time.png') no-repeat center",                 
                    marginLeft: '10px'            
                }        
            };    
        }
4、数组绑定
    <div :class="[activeStyle, defaultStyle]"></div>
 
5、computed结合es6对象的计算属性名方法
<div :class="dynClass">测试</div>
 
<script>     
    let activeStr = 'activeStyle';     
    let isAActive = true;     
    let isBActive = false;     
    export default { 
        computed: { 
            dynClass () { 
                return [ 
                    `${activeStr}`, 
                    {                         
                        ['name']: isAActive,    // 属性是条件,条件成立,则创建该属性
                        ['age']: isBActive                     
                    }                 
                ]             
            }         
        },
    }
</script>
解析: <div class="activeStyle name">测试</div>
posted @ 2019-04-26 21:45  longpanda_怪怪哉  阅读(1351)  评论(2编辑  收藏  举报
下定决心了,要把写不出代码就摸后脑勺的习惯给改了! 如果可以~单身待解救~~