vue.js样式绑定01

<html>

    <head>

        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

        <title>为指定书名添加颜色</title>

        <style>

            body{

                font-family:微软雅黑

            }

            .search input{

                width:350px;

                height:30px;

            }

            .item{

                width:350px;

                height:100px;

                line-height:100px;

                border-bottom:1px solid #999999;

            }

            .item img{

                width:100px;

                float:left

            }

            .active{

                height:100px;

                line-height:100px;

                color:#FF0000

            }

        </style>

        <script src="js/vue.js"></script>

    </head>

    <body>>

        <div id="example">

            <!-- 显示全部图书信息 -->

                <div>

                    <div class="item" v-for="book in books">

                        <img v-bind:src="book.image">

                        <span v-bind:class="{active: book.active}" style="cursor: pointer" v-on:click="changeColor(book)">{{book.bookname}}</span>

                    </div>

                </div>

            </div>

        <script type="text/javascript">

            var vm = new Vue({

                el:'#example',

                data:{

                    //定义图书信息数组

                    books : [

                        {

                            bookname : '零基础学JavaScript',

                            image : 'images/javascript.png',

                            // active : false

                        },

                        {

                            bookname : '零基础学HTML5+CSS3',

                            image : 'images/htmlcss.png',

                            // active : false

                        },

                        {

                            bookname : 'JavaScript精彩编程200例',

                            image : 'images/javascript200.png',

                            // active : false

                        },

                        {

                            bookname : 'HTML5+CSS3精彩编程200例',

                            image : 'images/htmlcss200.png',

                            // active : false

                        }

                    ]

                },

                created:function(){

                    for(let i=0;i<this.books.length;i++){

                    Vue.set(this.books[i],'active',false)

                    }

                },

                methods: {

                    changeColor(book){

                        // 先把所有的书都变成黑色

                        for(let i = 0 ; i<this.books.length; i++){

                            this.books[i].active = false

                        }

                        // 再把单击的书变成黑色

                        book.active = true

                    }

                }

            })

        </script>

    </body>

</html>




 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,以下是对你提出的前端Vue面试题的回答: 1. Vue.js是一款流行的JavaScript框架,用于构建用户界面。Vue.js的特点是简单易学、灵活性强、性能高、可组合性好等。 2. Vue.js的双向数据绑定是通过使用数据劫持和发布/订阅模式实现的。当数据发生变化时,Vue.js会自动更新视图,反之亦然。 3. Vue.js中的生命周期钩子函数有8个,分别是beforeCreate、created、beforeMount、mounted、beforeUpdate、updated、beforeDestroy和destroyed。它们分别在不同的时刻被调用,用于执行一些特定的操作。 4. Vue组件是Vue.js应用程序中的可重用代码块。通过定义一个Vue组件,可以将其作为一个独立的模块来使用。Vue组件通常包括模板、样式和逻辑等内容。 5. Vue.js中的指令是一种用于向DOM元素添加特殊行为的语法。常用的指令有v-if、v-show、v-for、v-bind和v-on等等。 6. Vue.js中的路由是用于管理Vue应用程序中页面之间导航的方式。可以通过Vue Router插件来实现路由功能。 7. Vue.js中的过滤器是一种用于格式化文本的功能。可以通过定义一个过滤器来将数据进行格式化并渲染到HTML中。 8. Vue.js中的计算属性是一种用于动态计算Vue组件的属性值的方式,与方法不同的是,计算属性具有缓存和依赖检测的特点。 9. 在Vue.js中,可以通过Vue.directive()方法来定义自定义指令。自定义指令通常用于扩展Vue.js的功能。 10. Vue.js的单文件组件是一种将模板、样式和逻辑封装在一个文件中的方式,以便于组件的管理和维护。可以通过Vue CLI工具来创建和使用单文件组件。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值