Vue第一天

来源:https://www.cnblogs.com/duxiu-fang/archive/2019/07/31/11277116.html
-Advertisement-
Play Games

什麼是 Vue.js? Vue.js是前端的主流框架之一,與 Angular.js、React.js一起,並稱為前端三大主流框架 Vue.js是一套構建用戶界面的框架,只關註視圖層,它不僅易上手,還便於與第三方庫或既有項目整合。同時,Vue.js也有配套的第三方類庫,可以整合起來做大型項目 Vue. ...


什麼是 Vue.js?

  • Vue.js是前端的主流框架之一,與 Angular.js、React.js一起,並稱為前端三大主流框架
  • Vue.js是一套構建用戶界面的框架,只關註視圖層,它不僅易上手,還便於與第三方庫或既有項目整合。同時,Vue.js也有配套的第三方類庫,可以整合起來做大型項目
  • Vue.js的主要工作?主要負責MVC中的 V 這一層:主要工作就是和界面打交道,來製作前端頁面效果

為什麼要學習Vue.js?

  • 企業為了提高開發效率
  • 在Vue.js中,一個核心的概念就是讓程式猿不在操作DOM元素,讓程式猿可以更多的時間去關註業務邏輯,從而優化用戶體驗
  • 增強就業競爭力。現如今,大多數企業都要求會使用 Vue.js

框架和庫的區別

  • 框架:是一套完整項目的解決方案,對項目的侵入性較大,當一個項目需要更換框架的時候,則需要重新架構整個項目
  • 例如: Node 中 Express;
  • 庫:提供某一個小功能,對項目的侵入性較小,當在做項目時一個庫無法實現某些需求的時候,可以使用其他庫來實現某些需求
  • 例如: jquery, Zepto, art-template

後端中的 MVC 和 前端中的 MVVM 的區別

  • MVC: 是後面的分層開發概念。M 為 Model(模型層)、V 為 View(視圖層)、C 為 Controller(處理層)。模型層:只能單一,只負責資料庫的操作,CRUD(增刪改查); 視圖層:每當用戶操作了界面,如果需要進行業務的處理,就會通過網路請求,去請求後端的伺服器。處理層:一般的我們將處理層分為三個模塊:入口模塊,路由處理模塊,業務邏輯處理模塊。
  • MVVM:是前端視圖層的概念:主要關註視圖層內部的分享。同樣的,MVVM 也分為三個部分: Model,、View、 VM ViewMoel。其中, VM 是MVVM 的思想的核心,因為 VM 為 M 與 V 之間數據的調度者。總體關係請看下圖:

  

Vue.js 的基本代碼

<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8" />
    <title>獨秀不愛秀</title>
    
</head>
<body>
    <div id="app">
        <p>{{ msg }}</p>
    </div>
    
    <!-- 1.導入 vue 的包 -->
    <script src="./vue/vue-2.4.0.js"></script>

    <script type="text/javascript">
        // 2.創建一個 vue 的實例
        let vm = new Vue({
            el: '#app', // 表示:當前我們 new 的這個 Vue 實例,要控制頁面上的哪個區域
            data: {     // data 屬性中,存放的是 el 中要用的數據
                msg: '歡迎學習Vue' // 通過 vue 提供的指令,很方便的就能把數據渲染到頁面上,程式猿不在手動操作DOM元素了
            }
        });
    </script>
</body>
</html>

  在上面這個例子中, div#app 這個元素區域就是 MVVM 中的 V(HTML結構)、我們 new 出來的 vm 就是 MVVM 中的 VM(調度者), data  就是 MVVM 中的 M(提供頁面中需要的數據)。

基本指令

  1. v-cloak: 能夠解決插值表達式({{}})的問題,只會替換自己的占位符,用法:
    <p v-cloak>{{ msg }}</p>

    同時在 css 文件中添加:

    [v-cloak] {
          display: none;
    }

     

  2. v-text: 預設解析字元串,會覆蓋元素中原本的內容,用法:
    <h1 v-text="msg">==========</h1>

    這樣的話,Vue實例中 msg 中的內容就會替換掉 ===========

  3. v-html: 用來解析 HTML 代碼,也會覆蓋元素中原本的內容,用法:
    <div v-html="msg2">123456</div>
    msg2: '<h2>哈哈,我是 h1 元素</h2>',這樣運行在瀏覽器時會解析 HTML 代碼
  4. v-bind: 用於綁定屬性(簡寫 :),用法:
    <input type="button" value="按鈕" v-bind:title="mytitle + '123'">

    簡寫:

    <input type="button" value="按鈕" :title="mytitle + '123'">

     

  5. v-on:用於綁定事件機制(簡寫 @),用法:
    <button type="button" v-on:click="show">點擊</button>

    簡寫:

    <button type="button" @mouseover="show">滑鼠進入</button>

     

事件修飾符

  1. .stop: 阻止事件冒泡,用法:
    <div class="inner" @click="divHandle">
                <button @click.stop="btnHandle">戳他</button>
            </div>

     

  2. .prevent:阻止預設行為,用法:
            <a href="http://www.baidu.com" @click.prevent="goBaidu">有問題,問度娘</a>

     

  3. .capture:捕獲觸發事件,用法:
    <div class="inner" @click.capture="divHandle">
                <button @click="btnHandle">戳他</button>
            </div>

     

  4. .self: 只有當用戶操作當前元素時才能觸發該事件,用法:
    <div class="inner" @click.self="divHandle">
                <button @click="btnHandle">戳他</button>
            </div>

     

  5. .once:只觸發一次事件,用法:
            <a href="http://www.baidu.com" @click.prevent.once="goBaidu">有問題,問度娘</a>

     

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 組件生命周期函數 React 主動調用的方法,也可重寫這些方法 "生命周期圖譜" 當組件實例被創建並插入 中時,其生命周期調用順序如下: constructor(props) 如果不需要初始化 state 或 不進行方法綁定,則不需要使用該方法 在組件掛載之前會先調用該方法,在實現構造函數時必須先調 ...
  • fn2是fn實例化出來的一個對象,要瞭解new做了那些事情,先看一下一個普通對象有哪些東西。 普通對象: 實例化對象fn2: 1:普通對象的__proto__指向了Function.prototype而fn2的__proto__指向了fn.prototype,所以new的過程中改變了fn2的__pr ...
  • JSX基本語法中關於react如何寫css樣式主要有三種方法 1、基於class --(className) 基於className ,通過className在style中給該class名的DOM元素添加樣式 2、基於inner css (facebook 主張的方式) 行間樣式(json) Fac ...
  • 07.31自我總結 一.文本屬性 大小:font size. 顏色:color 字重:font weight 可選屬性 | | |`bolder 細`| |`粗 更粗` 100 900之間整百的數字 字族:font family ​ 可以選擇多個用 隔開,匹配原則從左往右哪個能用就用哪個 字體樣式: ...
  • 07.31自我總結 一.a標簽的四大偽類 a:link{樣式} 未訪問時的狀態(滑鼠點擊前顯示的狀態) a:hover{樣式} 滑鼠懸停時的狀態 a:visited{樣式} 已訪問過的狀態(滑鼠點擊後的狀態) a:active{樣式} 滑鼠點擊時的狀態 補充 input:focus{樣式} 點擊後鼠 ...
  • 詳情請點擊 ...
  • 本例使用node.js自帶的http模塊和superagent、cheerio模塊,本著學習的精神爬取了博客園共200頁博客鏈接、摘要、時間、作者等等內容。 ...
  • 1、獲取ECharts 在 ECharts 的 GitHub 上下載最新的 release 版本,解壓出來的文件夾里的 dist 目錄里可以找到最新版本的 echarts 庫。 2、引入ECharts 像普通的 JavaScript 庫一樣用 script 標簽引入。 3、繪製圖表 然後就可以通過  ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...