changes
This commit is contained in:
parent
1bd62a211b
commit
dadd6ff863
|
@ -20,7 +20,9 @@
|
||||||
<template id="tpl">
|
<template id="tpl">
|
||||||
<div>
|
<div>
|
||||||
<div>
|
<div>
|
||||||
<slot name="item"></slot>
|
<slot name="item">
|
||||||
|
<div></div>
|
||||||
|
</slot>
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
<slot>
|
<slot>
|
||||||
|
|
|
@ -9,16 +9,19 @@
|
||||||
<body>
|
<body>
|
||||||
<div id="app">
|
<div id="app">
|
||||||
<apps>
|
<apps>
|
||||||
<h1>这是父组件</h1>
|
|
||||||
<div slot-scope="data">
|
<div slot-scope="item">
|
||||||
<span v-for="li in data">{{li.join("-")}}</span>
|
<h1>这是父组件</h1>
|
||||||
|
<span v-for="li in item">
|
||||||
|
<span>{{li.join("__-_")}}</span>
|
||||||
|
</span>
|
||||||
</div>
|
</div>
|
||||||
</apps>
|
</apps>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<template id="tpl">
|
<template id="tpl">
|
||||||
<div>
|
<div>
|
||||||
<slot :datas="list">
|
<slot :item="list">
|
||||||
<ul>
|
<ul>
|
||||||
<li v-for="item in list">{{item}}</li>
|
<li v-for="item in list">{{item}}</li>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
|
@ -0,0 +1,48 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
|
<title>Document</title>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
|
||||||
|
<div id="app">
|
||||||
|
<apps>
|
||||||
|
<div slot-scope="data">
|
||||||
|
<ul v-for="item in data">
|
||||||
|
<div>{{item.join("__*__")}}</div>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</apps>
|
||||||
|
<apps></apps>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<template id="tpl">
|
||||||
|
<div>
|
||||||
|
<slot :data="list">
|
||||||
|
<div v-for="item in list">
|
||||||
|
{{item}}
|
||||||
|
</div>
|
||||||
|
</slot>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
</body>
|
||||||
|
<script src="../../../JavaScript/vue.js"></script>
|
||||||
|
<script>
|
||||||
|
new Vue({
|
||||||
|
el:"#app",
|
||||||
|
components:{
|
||||||
|
'apps':{
|
||||||
|
template:"#tpl",
|
||||||
|
data(){
|
||||||
|
return {
|
||||||
|
list: ['这是内容1', '这是内容2', '这是内容3']
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
</script>
|
||||||
|
</html>
|
|
@ -0,0 +1,82 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
|
<title>Document</title>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div id="app">
|
||||||
|
<!-- 具名插槽不能直接写在apps上 -->
|
||||||
|
<!-- 作用域插槽通过 在组件上的:变量=值的做法将子组件中的数据短暂存储到变量,
|
||||||
|
在父组件中使用slot-scope方法将子组件的内容存到这个方法里面再通过遍历得出来的
|
||||||
|
-->
|
||||||
|
<apps>
|
||||||
|
<!-- 具名插槽 -->
|
||||||
|
<div slot="form_table">
|
||||||
|
<form>
|
||||||
|
<label for="">用户名:<input type="text" name="" id=""></label>
|
||||||
|
<br>
|
||||||
|
<label for="">密码:<input type="password" name="" id=""></label>
|
||||||
|
<br>
|
||||||
|
<label for="">验证码:<input type="text" name="" id=""></label>
|
||||||
|
<br>
|
||||||
|
<button>注册</button>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
|
</apps>
|
||||||
|
<br>
|
||||||
|
<!-- 作用域插槽 -->
|
||||||
|
<apps>
|
||||||
|
<div slot="items" slot-scope="datas">
|
||||||
|
<span v-for="li in datas">
|
||||||
|
<span>{{li.join("====")}}</span>
|
||||||
|
</span>
|
||||||
|
<span v-for="lis in datas">
|
||||||
|
<div>{{lis.join("\t")}}</div>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
</apps>
|
||||||
|
</div>
|
||||||
|
<template id="tpl">
|
||||||
|
<div>
|
||||||
|
<div>
|
||||||
|
<slot name="form_table">
|
||||||
|
<form>
|
||||||
|
<label for="">用户名:<input type="text" name="" id=""></label>
|
||||||
|
<br>
|
||||||
|
<label for="">密码:<input type="password" name="" id=""></label>
|
||||||
|
<br>
|
||||||
|
<button>登录</button>
|
||||||
|
</form>
|
||||||
|
</slot>
|
||||||
|
</div>
|
||||||
|
<slot name="items" :datas="list">
|
||||||
|
<div>
|
||||||
|
<ul v-for="item in list">
|
||||||
|
<li>{{item}}</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</slot>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
</body>
|
||||||
|
<script src="../../JavaScript/vue.js"></script>
|
||||||
|
<script>
|
||||||
|
new Vue({
|
||||||
|
el:"#app",
|
||||||
|
components:{
|
||||||
|
'apps':{
|
||||||
|
template:"#tpl",
|
||||||
|
data(){
|
||||||
|
return {
|
||||||
|
list:['内容1','内容2','内容3']
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
</script>
|
||||||
|
</html>
|
Loading…
Reference in New Issue