国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

Vue單文件組件開發實現過程詳解

瀏覽:103日期:2022-12-21 15:11:39

第一步:配置環境

安裝cnpm

npm install -g cnpm --registry=https://registry.npm.taobao.org

安裝@vue/cli

cnpm install -g @vue/cli

檢查版本是否正確

vue --version

Vue單文件組件開發實現過程詳解

使用vue.server和vue.build對*.vue文件進行快速原型開發,需要安裝vue serve

cnpm install -g @vue/cli-service-global

新建一個App.vue文件測試安裝是否成功:

<template>2 <h1>Hello world!</h1>3 </template>

在該文件當前路徑運行:

vue serve App.vue

打開瀏覽器輸入localhost:8080看到如下畫面則運行成功

Vue單文件組件開發實現過程詳解

環境安裝到此結束,接下來用一個簡單案例來學習vue的單文件組件開發。

第二步:簡單案例實戰

以一個物品清單為例:

Vue單文件組件開發實現過程詳解

該案例由4個組件構成,分別是:

1. addItem.vue 添加物品

2. item.vue 物品實例

3. items.vue 物品列表

4. changeTitle 改變標題

首先,創建一個項目demo:

vue create demo

項目默認目錄如下,啟動主頁在public, vue源碼(包括組件)都存放到src

Vue單文件組件開發實現過程詳解

然后分別編寫各組件代碼

1. addItem.vue:

<template> <div class='input-group'> <input type='text' placeholder='add shopping list item' v-model='newItem'> <span class='input-group-btn'> <button @click='emitAdd'><i class='fa fa-plus-square-o fa-lg'> </i><span>Add</span> </button> </span> </div></template><script>export default { data() { return { newItem: ’’ } }, methods: { emitAdd() { this.$emit(’addItem’, this.newItem); } }}</script><style></style>

2. item.vue:

<template> <li : class='list-group-item'> <div class='checkbox'> <label><input type='checkbox' v-model='item.checked'><span>{{ item.text }}</span> </label> </div> </li></template><script>export default { props: [’item’]}</script><style>.removed { color: gray;}.removed span { text-decoration: line-through;}</style>

3. items.vue:

<script>import item from ’./item’export default { props: [’items’], components: { item }}</script><template> <ul class='list-group'> <item v-for='item in items' :key='item.id' :item='item'></item> </ul></template><style></style>

4. changeTitle.vue:

<template> <div> <em>Change the title here:</em> <input type='text' :value='title' @input='onInput'> </div></template><script>export default { props: [’title’], methods: { onInput(event) { this.$emit(’input’, event.target.value); } }}</script>

最后修改App.vue,導入上面的組件:

<template> <div class='container'> <h1>{{ title }}</h1> <add-item @addItem='add'></add-item><br> <items :items='items'></items> <div class='footer'> <hr> <change-title :title='title' v-model='title'></change-title> </div> </div></template><script>import addItem from ’./components/addItem’import items from ’./components/items’import changeTitle from ’./components/changeTitle’export default { name: ’app’, components: { addItem, items, changeTitle }, data() { return { items: [{id: 1, text: ’Bananas’, checked: true},{id: 2, text: ’Apples’, checked: false} ], title: ’My Items List’ } }, methods: { add(text) { this.items.push({text: text,checked: false }); } }}</script><style></style>

需要注意的是:每個組件必須只有一個根元素。我這里需要在public/index.html引入bootstrap樣式和font-awesome圖標字體。

運行程序:

cnpm run serve

最后附上運行截圖:

Vue單文件組件開發實現過程詳解

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Vue
相關文章:
主站蜘蛛池模板: 老人毛片| 精品一区二区三区的国产在线观看 | 99久久免费国产精品 | 国产一及片 | 一级待一黄aaa大片在线还看 | 一级做a爰片久久毛片潮喷 一级做a爰片久久毛片美女 | 又黄又爽又刺激的视频 | 热99re久久国超精品首页 | 成人在线高清 | 成人精品在线视频 | 成年人毛片 | 国产3级在线观看 | 日本a级三级三级三级久久 日本a级特黄三级三级三级 | 欧美一级毛片生活片 | 一级一级一片免费高清 | 午夜性刺激免费视频观看不卡专区 | 男女免费视频网站 | 久久国产精品久久久久久 | 欧洲一级毛片免费 | 九九精品视频在线观看九九 | 亚洲一区二区三区精品视频 | 欧美一级色视频 | 国产又粗又黄又湿又大 | 黄色三级理沦片 | 欧美成人免费网在线观看 | 成人午夜两性视频免费看 | 69欧美另类xxxxx高清 | 18videosex性欧美69超高清 | www.色片| 神马国产| 国产欧美日韩综合一区二区三区 | 另类自拍 | 免费看特级毛片 | 国产精品91av | 欧美一级做一级爱a做片性 欧美一欧美一级毛片 | 午夜在线伦理福利视频 | 亚洲国产精品一区二区久久 | 国产三级做爰高清视频a | 国产精品v一区二区三区 | 99精品国产一区二区三区 | 久草视频中文在线 |