Vue条件判断、循环与组件

1 条件判断
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
</head>

<body>
    <div id="app">
        <input type="checkbox" v-model="ok">是否同意《xxx》</input>
        <h1 v-if="ok">是</h1>
        <h1 v-else>否</h1>
    </div>
    <script src="vue.min.js"></script>
    <script>
        new Vue({
            el: '#app',
            data: {
                ok:false //默认为fasle,即未选中
            }
        })
    </script>
</body>

</html>
2 循环指令
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
</head>

<body>
    <div id="app">
        <table border="1">
            <!-- index:数据索引,从0开始 -->
            <tr v-for="(user,index) in userList">
                <td>{{index}}</td>
                <td>{{user.id}}</td>
                <td>{{user.name}}</td>
                <td>{{user.age}}</td>
            </tr>
        </table>
    </div>
    <script src="vue.min.js"></script>
    <script>
        new Vue({
            el: '#app',
            data: {
                userList:[
                    {id:"001",age:50,name:"aa"},
                    {id:"002",age:18,name:"wz"},
                    {id:"003",age:9,name:"pp"}
                ]
            }
        })
    </script>
</body>

</html>
3 组件

组件时vue.js中最强大的功能之一,可以扩展html的标签元素。

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
</head>

<body>
    <div id="app">
        <Navbar></Navbar>
    </div>
    <script src="vue.min.js"></script>
    <script>
        new Vue({
            el: '#app',
            components: {
                // 组件名称
                "Navbar":{
                    // 组件内容
                    template:"<ul><li>首页</li><li>学员管理</li></ul>"
                }
            }
        })
    </script>
</body>

</html>

不过上面的组件仅仅在当前页面有效,要想在其他html中使用组件扩展的标签,可以在创建js文件,然后导入js文件。js文件代码如下。

Vue.component(
    // 组件名称
    "Navbar",
    {
        // 组件内容
        template:"<ul><li>首页</li><li>学员管理</li></ul>"
    }
)

html测试代码如下。

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
</head>

<body>
    <div id="app">
        <Navbar></Navbar>
    </div>
    <script src="vue.min.js"></script>
    <script src="component/navbar.js"></script>
    <script>
        new Vue({
            el: '#app',
            data: {
                
            }
        })
    </script>
</body>

</html>