最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

vue3-初步接觸/指令和條件渲染

2023-04-19 23:53 作者:蕪湖小量化  | 我要投稿

vue環(huán)境的配置

在終端進(jìn)入項(xiàng)目目錄并進(jìn)行如下操作

請(qǐng)確保已經(jīng)安裝node.js

npm init vue@latest

初步學(xué)習(xí)不需要開(kāi)啟額外的功能 選擇no 否則會(huì)進(jìn)入ts的啟動(dòng)

cd <your-project-name>

npm install?

npm run dev

框架構(gòu)建完成

初步認(rèn)識(shí)vue文件結(jié)構(gòu)

部分設(shè)置沒(méi)有啟用? 圖片展示的是最基本的vue框架

assets:是用于存放著各種靜態(tài)文件,比如圖片,css等。

components:用于存放自定義的公共組件,即非路由組件,區(qū)別views包下的page組件。router:vue-router路由文件。index.js中引入views包下的.vue。store:是vuex的文件,主要用于項(xiàng)目里邊的一些狀態(tài)保存。比如state、mutations、actions、getters、modules。

views:用于存放我們寫(xiě)好的各種頁(yè)面,即路由組件,比如Login.vue,Home.vue。

App.vue:是主vue模塊,主要是使用router-link引入其他模塊,App.vue是項(xiàng)目的主組件,所有的頁(yè)面都是在App.vue下切換的。
main.js:程序入口文件,主要作用是初始化vue實(shí)例,同時(shí)可以在此文件中引用某些組件庫(kù)或者全局掛載一些變量。

vue最簡(jiǎn)單框架

使用npm run dev 可以打開(kāi)html的服務(wù)

指令和條件渲染

展示相關(guān)文件

vue主模塊

<script setup>
import Start from "@/components/start.vue";
import ModelInsert from "@/components/model-insert.vue";
import ConditionalRender from "@/components/Conditional-Render.vue";
</script>

<template>
?<main>
? ?<start />
? ?<ModelInsert />
? ?<ConditionalRender />
?</main>
</template>

<style scoped>
main{

}
</style>

子組件1

<template id="app">
?<!--緊跟著的并列元素 可以通過(guò)v-if/v-else-if/v-else來(lái)實(shí)現(xiàn)條件渲染-->
?<div class="top" v-if="number>50">
? ?<p v-if="number>200">渲染:大于200</p>
? ?<p v-else-if="50<number<200">渲染:50-200</p>
? ?<p v-else>渲染:小于50</p>
?</div>
?<div v-else>不渲染</div>
?<!-- ? 通常更推薦template來(lái)代替包裝 因?yàn)槭褂胐iv包裝會(huì)渲染div標(biāo)簽自身 而template不會(huì)-->
?<template v-if="show">
? ?<p>靜夜思</p>
? ?<p>李白</p>
? ?<p>床前明月光</p>
?</template>
?<!-- ? ?v-show是通過(guò)css樣式不展示來(lái)實(shí)現(xiàn)條件渲染 當(dāng)條件為假時(shí) v-show元素依然會(huì)存在DOM結(jié)構(gòu)中-->
?<!-- ? ?在實(shí)際的條件渲染中,v-if在頻繁切換時(shí)的性能消耗更高 若組件渲染條件頻繁切換建議使用v-show -->
?<div v-show="number>200">
? ?v-show渲染
?</div>

</template>

<script>
export default {
?name: "Conditional-Render",
?data(){
? ?return{
? ? ?number:100,
? ? ?show:true,
? ?}
?}
}

</script>

<style scoped>
@import "@/assets/Conditional-Render.css";
</style>

子組件2

<template id="app">
?<h1>開(kāi)始Vue的旅程</h1>
?<!-- 使用v-bind來(lái)實(shí)現(xiàn)來(lái)動(dòng)態(tài)綁定便簽的樣式表 嘗試修改:-->
?<!-- <h1 v-bind:id="id_1">hello</h1>-->
?<p>模板數(shù)字:&nbsp;{{number}}</p>
?<!-- {{}}在插值時(shí)還可以直接使用js的表達(dá)式 嘗試修改:-->
?<!-- <p>模板數(shù)字:&nbsp;{{number ** 2}}</p>-->
?<p>模板結(jié)果:&nbsp;{{result}}</p>
?<!-- ?如果使用v-once指令那么一旦渲染則不再變化 ?嘗試修改:-->
?<!-- ?<p v-once>模板結(jié)果:&nbsp;{{result}}</p> ?-->
?<!-- ?對(duì)于html代碼的插值則需要使用v-html ?-->
?<p>html插值文字:&nbsp;<span v-html="insert_html_code"></span></p>
?<!-- ?v-if是條件渲染 只有其為布爾值true時(shí)才會(huì)被渲染-->
?<p v-if="true">這是一段會(huì)被渲染的文字</p>
?<p v-if="false">這是一段不會(huì)被渲染的文字</p>
?<!-- ?在參數(shù)后面還可以增加修飾符 修飾符會(huì)為vue增加額外的功能 以下指令修飾符可以去除輸入框首尾的空格-->
?<input v-model.trim="content" placeholder="請(qǐng)輸入備注!">
?<br>
?<button class="btn-1" v-on:click="clickButton">換算</button>
?<p class="text-1">對(duì)于v-bind可以省略 直接使用:來(lái)綁定 對(duì)于v-on可以把v-on:縮寫(xiě)成@</p>
?<p>本節(jié)小結(jié):初步接觸一些模板指令 v-on/v-if/v-html/v-bind/v-once</p>
</template>

<script>
export default {
?name: "modelInsert",
?data(){
? ?return{
? ? ?number:0,
? ? ?result:0,
? ? ?insert_html_code:"<span style=\"font-family: 楷體, sans-serif; color: #a261e8\">理論化學(xué)</span>",
? ? ?id_1:'top_hello'
? ?}
?},
?methods:{
? ?clickButton() {
? ? ?this.number = this.number + 1
? ? ?this.result = this.number ** 2
? ?}
?}
}
</script>

<style scoped>
?@import "@/assets/model-insert.css";
</style>

子組件3

<template>
?<button class="btn" @click="count++">第 {{count}} 次點(diǎn)擊</button>
</template>

<script>
export default {
?name: "start",
?data(){
? ?return{
? ? ?count:0,
? ?}
?}
}
</script>
<!--實(shí)現(xiàn)對(duì)組件css的引用-->
<style scoped>
?@import "@/assets/start.css";
</style>

css1

*{
? ?margin: 0;
}
.top{
? ?margin-top: 20px;
}
p{
? ?color: #41c557;
}

css2

*{
? ?margin: 0;
}
h1{
? ?color: #2a9fde;
? ?font-family: 楷體, sans-serif;
? ?letter-spacing: 2px;
? ?font-size: 20px;
}
p{
? ?height: 20px;
? ?color: #5bc8ea;
? ?font-family: 楷體, sans-serif;
}
.btn-1{
? ?margin-top: 5px;
? ?margin-left: 50px;
? ?background-color: #e2d1f3;
? ?color: #128625;
? ?border: 2px solid #5bc8ea;
}
.text-1{
? ?text-indent: 2em;
? ?margin-top: 10px;
}
input{
? ?margin-top: 10px;
? ?width: 200px;
? ?text-align: center;
}

css3

.btn{? ?font-family: 楷體, sans-serif;

? ?color: #dc1919;
? ?background-color: #e2d1f3;
? ?border: 2px solid #bfcfd9;
}

啟動(dòng)html服務(wù)

相關(guān)語(yǔ)法包含其中,可以嘗試


vue3-初步接觸/指令和條件渲染的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
靖安县| 康乐县| 宜兴市| 青河县| 通州区| 绵阳市| 西昌市| 宜州市| 凤台县| 巢湖市| 古丈县| 内江市| 湖南省| 东明县| 鹤壁市| 安远县| 大丰市| 安新县| 南郑县| 龙州县| 铜鼓县| 聂荣县| 汶上县| 陈巴尔虎旗| 枣阳市| 明水县| 昌都县| 皮山县| 钟祥市| 定边县| 易门县| 天等县| 册亨县| 略阳县| 宜兰县| 栾川县| 许昌县| 吴桥县| 简阳市| 巴林右旗| 巴青县|