Web客戶端開發

来源:https://www.cnblogs.com/ggonekim/archive/2023/03/10/17203833.html
-Advertisement-
Play Games

Web開發工具 從高層次來看,可以將客戶端工具放入以下三大類需要解決的問題中: 安全網路 — 在代碼開發期間有用的工具。 轉換 — 以某種方式轉換代碼的工具,例如將一種中間語言轉換為瀏覽器可以理解的 JavaScript。 開發後階段 — 編寫完代碼後有用的工具,如測試和部署工具。 終端命令 導航計 ...


Web開發工具

從高層次來看,可以將客戶端工具放入以下三大類需要解決的問題中:

  • 安全網路 — 在代碼開發期間有用的工具。
  • 轉換 — 以某種方式轉換代碼的工具,例如將一種中間語言轉換為瀏覽器可以理解的 JavaScript。
  • 開發後階段 — 編寫完代碼後有用的工具,如測試和部署工具。

終端命令

  • 導航電腦的文件系統以及基本級別的任務,如創建、複製、重命名和刪除:
    • 移動您的目錄結構 : cd
    • 建立目錄:mkdir
    • 創建文件(修改他們的原數據): touch
    • 複製文件:cp
    • 移動文件:mv
    • 刪除文件或目錄:rm
  • 下載在特定的 url 找到的文件:curl
  • 在較大的文件體中尋找特定的片段:grep
  • 主頁查看文件的內容:less, cat
  • 操作和轉換文本流(例如,講 HTML 文件中的所有實例改為
    ): awk, tr, sed

一個非常有用的終端快捷方式是使用tab 鍵自動完成你知道的名字,而不是必須鍵入整個東西。例如,在鍵入以上兩個命令後,嘗試鍵入 cd D 並按下tab — 它應該自動完成目錄名稱 Desktop 對於您,只要它存在於當前目錄中。在你前進的過程中記住這一點。

JSX

JSX,意為 JavaScript 和 XML, 是 JavaScript 的擴展,為 JavaScript 帶來了類似 HTML 的語法。它由 React 團隊發明,用於 React 應用程式,但也可用於開發其他應用程式——例如 Vue 應用程式。

const subject = "World";
const header = (
  <header>
    <h1>Hello, {subject}!</h1>
  </header>
);

vue jsx

import myComponent from './myComponent'
import './HelloWorld.css'

// 創建一個組件button
const ButtonCounter = {
  name: "button-counter",
  props: ["count"],
  methods: {
    onClick() {
      this.$emit("change", this.count + 1);
    }
  },
  render() {
    return (
      <button onClick={this.onClick}>數量 {this.count}+</button>
    );
  }
};
export default {
  name: 'HelloWorld',
  components: {
    myComponent 
  },
  data () {
    return {
      text:'hello 紙沒了飛機',
      inputText:'我吃了',
      count: 0
    }
  },
  props: {
    msg: String
  },
  watch: {},
  methods: {
    onChange(val) {
      this.count = val;
      alert(this.count)
    }
  },
  render() {
  // const {text,inputText,count} = this //通過解構,下方return片段中就不需要this
    return (
    <div>
     <h3>內容</h3>
     {/* 純文本 */}
     <p>hello, I am Gopal</p>
     {/* 動態內容 */}
     <p>{ this.text }</p>
     <p>hello { this.msg }</p>
     {/* 輸入框 */}
     <input/>
     {/* 自定義組件 */}
     <myComponent/>
     <ButtonCounter
        style={{ marginTop: "10px" }}
        count={this.count}
        type="button"
        onChange={this.onChange}
      />
    </div>
    );
   }
}

VUE簡單說明

<template> 包含了所有的標記結構和組件的展示邏輯。template 可以包含任何合法的 HTML

組件文件名及其在 JavaScript 中的表示方式總是用大寫駝色(例如ToDoList),而等價的自定義元素總是用連字元小寫(例如<to-do-list>)。

<script> 包含組件中所有的非顯示邏輯,最重要的是, <script> 標簽需要預設導出一個 JS 對象。該對象是您在本地註冊組件、定義屬性、處理本地狀態、定義方法等的地方。在構建階段這個包含 template 模板的對象會被處理和轉換成為一個有 render() 函數的 Vue 組件。

props使組件動態化

<template>
  <div>
    <input type="checkbox" id="todo-item" checked="false" />
    <label for="todo-item">{{label}}</label>
  </div>
</template>

<script>
  export default {
    props: {
      label: { required: true, type: String },
      done: { default: false, type: Boolean }
    }
  };
</script>
  1. label的值應該是一個帶有兩個屬性的對象(或者是props,因為它們被調用在可找到的組件的 context)
    1. 第一個 required 屬性,它的值是 true. 這將會告訴 Vue 說,我們希望每個該組件的實例都必須有個 label 欄位。如果 ToDoItem 組件沒有 label 欄位的話,Vue 會提示警告。
    2. 第二是添加一個 type 屬性。這個屬性的值設為 JavaScript 的 String 類型。這等於告訴 Vue,我們希望 type 屬性的值是 String 類型的。
  2. 現在轉向doneprop.
    1. 首先添加一個 default 屬性,它的值是 false。這意味著當沒有 done prop 被傳遞給 ToDoItem 組件時, done prop 的值會是 false(註意 default 屬性不是必需的————我們只在非 required props 里才需要 default
    2. 接著,添加一個 type 屬性,值為 Boolean。這將告訴 Vue,我們希望這個 prop 的值是 JavaScript 的 Boolean 類型。

調用時傳遞label參數

<to-do-item label="My ToDo Item"></to-do-item>

props 是一種單向數據綁定,組件永遠不該改變自己的 props 的值,這點很重要。堅守這點的原因有很多。其一是,組件修改 props 會造成程式調試困難。如果一個值被傳遞進多個子組件,將很難定位這個值是在哪裡被修改的。此外,修改 props 會造成組件重新渲染。所以,一個組件里突變的 props 會觸發組件重新渲染,這可能會反過來再次觸發 props 突變。

data() {
  return {
    key: value
  }
}

data 屬性是一個函數。這是為了在運行時保持組件的每個實例的數據值是唯一的——為每個組件實例單獨調用函數。如果將數據聲明為僅一個對象,則該組件的所有實例將共用相同的值。這是 Vue 註冊組件方式的副作用,也是你不想要的。


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

-Advertisement-
Play Games
更多相關文章
  • 今天鹹魚給大家分享幾個不錯的 Linux 運維腳本,這些腳本中大量使用了 Linux 的文本三劍客: 1. awk 2. grep 3. sed 建議大家這三個工具都要瞭解並最好能夠較為熟練的使用 根據 PID 顯示進程所有信息 根據用戶輸入的 PID,過濾出該 PID 所有的信息 #! /bin/ ...
  • GreatSQL社區原創內容未經授權不得隨意使用,轉載請聯繫小編並註明來源。 GreatSQL是MySQL的國產分支版本,使用上與MySQL一致。 作者: xryz 文章來源:GreatSQL社區原創 前言: 我們在日常維護資料庫的時候,經常會遇到查詢慢的語句,這時候一般會通過執行EXPLAIN去查 ...
  • 在《商業銀行理財業務監督管理辦法》《關於規範金融機構資產管理業務的指導意見》等理財新規、資管新規的要求下,大資管行業結構持續優化,存量金融風險明顯收斂。此外,也促使資管行業在產品、風險、投研、客戶、營銷、管理、服務等各個層面加速數字化轉型。 本期DTALK我們邀請到袋鼠雲金融行業解決方案專家 範雲浩 ...
  • 1. 前言 kafka作為數據中間鍵在數據服務解耦,大數據,日誌方面堪稱一把瑞士軍刀,備受青睞,作為提供了一套完整命令行的程式,日常進行調試過程中難免會用到一些指令,現總結18條最常用指令。 2. 常用指令 啟動消費者 bin/kafka-console-consumer.sh --bootstra ...
  • 上架基本需求資料 1、蘋果開發者賬號 註冊好的蘋果開發者賬號,個人的就可以了。繳納年費99美刀後登錄到蘋果開發者後臺即刻看到如下內容 簡單描述一下以上內容用於幹啥: 1.app Store Connect:用於蘋果上架,也就是咱們上架到app Store所需要操作的目錄 2.證書、標識符和描述文件: ...
  • 前言 寫作如說話,想說與說明白中間隔著溝壑! 下麵用 Notion AI 作詩來作為本文開頭吧。 想說與說明白(作者:Notion AI) 想說千言萬語,說明白卻難如登天。 言語之間,溝壑重重,思想與表達,有時天壤之別。 有時候,我們沉默不語, 缺乏表達能力,難以抒發內心的情感。 這時候,Notio ...
  • ​ 表格: <table> <tr> <th>表格1</th> </tr> <tr> <td>表格2</td> </tr> </table> 快捷鍵:table>tr*數量>td*數量 屬性名 屬性值 說明 align left、center、right border 1或“” 邊框 cellpad ...
  • 這裡給大家分享我在網上總結出來的一些知識,希望對大家有所幫助 vue3 於 2020 年 09 月 18 日正式發佈,2022 年 2 月 7 日 vue3 成為新的預設版本 距離 vue3 正式發佈已經過去兩年有餘, 成為預設版本也過去大半年了,以前還能說是對新技術、新特性的觀望,而現在面試都直問 ...
一周排行
    -Advertisement-
    Play Games
  • 基於.NET Framework 4.8 開發的深度學習模型部署測試平臺,提供了YOLO框架的主流系列模型,包括YOLOv8~v9,以及其系列下的Det、Seg、Pose、Obb、Cls等應用場景,同時支持圖像與視頻檢測。模型部署引擎使用的是OpenVINO™、TensorRT、ONNX runti... ...
  • 十年沉澱,重啟開發之路 十年前,我沉浸在開發的海洋中,每日與代碼為伍,與演算法共舞。那時的我,滿懷激情,對技術的追求近乎狂熱。然而,隨著歲月的流逝,生活的忙碌逐漸占據了我的大部分時間,讓我無暇顧及技術的沉澱與積累。 十年間,我經歷了職業生涯的起伏和變遷。從初出茅廬的菜鳥到逐漸嶄露頭角的開發者,我見證了 ...
  • C# 是一種簡單、現代、面向對象和類型安全的編程語言。.NET 是由 Microsoft 創建的開發平臺,平臺包含了語言規範、工具、運行,支持開發各種應用,如Web、移動、桌面等。.NET框架有多個實現,如.NET Framework、.NET Core(及後續的.NET 5+版本),以及社區版本M... ...
  • 前言 本文介紹瞭如何使用三菱提供的MX Component插件實現對三菱PLC軟元件數據的讀寫,記錄了使用電腦模擬,模擬PLC,直至完成測試的詳細流程,並重點介紹了在這個過程中的易錯點,供參考。 用到的軟體: 1. PLC開發編程環境GX Works2,GX Works2下載鏈接 https:// ...
  • 前言 整理這個官方翻譯的系列,原因是網上大部分的 tomcat 版本比較舊,此版本為 v11 最新的版本。 開源項目 從零手寫實現 tomcat minicat 別稱【嗅虎】心有猛虎,輕嗅薔薇。 系列文章 web server apache tomcat11-01-官方文檔入門介紹 web serv ...
  • 1、jQuery介紹 jQuery是什麼 jQuery是一個快速、簡潔的JavaScript框架,是繼Prototype之後又一個優秀的JavaScript代碼庫(或JavaScript框架)。jQuery設計的宗旨是“write Less,Do More”,即倡導寫更少的代碼,做更多的事情。它封裝 ...
  • 前言 之前的文章把js引擎(aardio封裝庫) 微軟開源的js引擎(ChakraCore))寫好了,這篇文章整點js代碼來測一下bug。測試網站:https://fanyi.youdao.com/index.html#/ 逆向思路 逆向思路可以看有道翻譯js逆向(MD5加密,AES加密)附完整源碼 ...
  • 引言 現代的操作系統(Windows,Linux,Mac OS)等都可以同時打開多個軟體(任務),這些軟體在我們的感知上是同時運行的,例如我們可以一邊瀏覽網頁,一邊聽音樂。而CPU執行代碼同一時間只能執行一條,但即使我們的電腦是單核CPU也可以同時運行多個任務,如下圖所示,這是因為我們的 CPU 的 ...
  • 掌握使用Python進行文本英文統計的基本方法,並瞭解如何進一步優化和擴展這些方法,以應對更複雜的文本分析任務。 ...
  • 背景 Redis多數據源常見的場景: 分區數據處理:當數據量增長時,單個Redis實例可能無法處理所有的數據。通過使用多個Redis數據源,可以將數據分區存儲在不同的實例中,使得數據處理更加高效。 多租戶應用程式:對於多租戶應用程式,每個租戶可以擁有自己的Redis數據源,以確保數據隔離和安全性。 ...