Vue3系列2--項目目錄介紹及運行項目

来源:https://www.cnblogs.com/lotusflower/archive/2022/07/31/16537603.html
-Advertisement-
Play Games

1 Vite項目目錄 用Vscode打開創建的項目,看到下麵的目錄結構: 通過運行 npm install 初始化項目後生成兩個初始化文件:node_modules和 package-lock.json 2 SFC 語法規範 *.vue 件都由三種類型的頂層語法塊所組成:<template>、<sc ...


1 Vite項目目錄

 用Vscode打開創建的項目,看到下麵的目錄結構:

 通過運行  npm install 初始化項目後生成兩個初始化文件:node_modules和 package-lock.json

2 SFC 語法規範

*.vue 件都由三種類型的頂層語法塊所組成:<template>、<script>、<style>

<template>(html)

  • 每個 *.vue 文件最多可同時包含一個頂層 <template> 塊。
  • 其中的內容會被提取出來並傳遞給 @vue/compiler-dom,預編譯為 JavaScript 的渲染函數,並附屬到導出的組件上作為其 render 選項。

<script>(js)

  • 每一個 *.vue 文件最多可同時包含一個 <script> 塊 (不包括<script setup>)。
  • 該腳本將作為 ES Module 來執行。
  • 其預設導出的內容應該是 Vue 組件選項對象,它要麼是一個普通的對象,要麼是 defineComponent 的返回值。

<script setup>(js)

  • 每個 *.vue 文件最多可同時包含一個 <script setup> 塊 (不包括常規的 <script>)
  • 該腳本會被預處理並作為組件的 setup() 函數使用,也就是說它會在每個組件實例中執行。<script setup> 的頂層綁定會自動暴露給模板。更多詳情請查看 <script setup> 文檔。

<style>(css)

  • 一個 *.vue 文件可以包含多個 <style> 標簽。
  • <style> 標簽可以通過 scoped 或 module attribute (更多詳情請查看 SFC 樣式特性) 將樣式封裝在當前組件內。多個不同封裝模式的 <style> 標簽可以在同一個組件中混

3 項目啟動命令詳解

在終端我們可以通過npm run dev 來啟動項目。在我們執行這個命令的時候會去找 package json 的scripts 然後執行對應的dev命令。

那為什麼我們不直接執行vite 命令不是更方便嗎?由於我們的電腦上面並沒有配置過相關命令 所以無法直接執行。

其實在我們執行npm install 的時候(包含vite) 會在node_modules/.bin/ 創建好可執行文件。

.bin 目錄,這個目錄不是任何一個 npm 包。目錄下的文件,表示這是一個個軟鏈接,打開文件可以看到文件頂部寫著 #!/bin/sh ,表示這是一個腳本 。

 在我們執行npm run xxx  npm 會通過軟連接 查找這個軟連接存在於源碼目錄node_modules/vite。

所以npm run xxx 的時候,就會到 node_modules/bin中找對應的映射文件,然後再找到相應的js文件來執行。

1.查找規則是先從當前項目的node_modlue /bin去找;

2.找不到去全局的node_module/bin 去找;

3.再找不到 去環境變數去找。

 node_modules/bin中 有三個vite文件。為什麼會有三個文件呢?

# unix Linux macOS 系預設的可執行文件,必須輸入完整文件名
vite
 
# windows cmd 中預設的可執行文件,當我們不添加尾碼名時,自動根據 pathext 查找文件
vite
 
# Windows PowerShell 中可執行文件,可以跨平臺
vite

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

-Advertisement-
Play Games
更多相關文章
  • 上篇文章講到使用MySQL的Explain命令可以分析SQL性能瓶頸,優化SQL查詢,以及查看是否用到了索引。 我們都知道創建索引可以提高查詢效率,但是具體該怎麼創建索引? 哪些欄位適合創建索引? 哪些欄位又不適合創建索引? 本文跟大家一塊學習一下如何創建合適資料庫索引。 ...
  • 使用flink的時候難免和redis打交道,相信大家都使用過flink-connector-redis來處理,但是當我想要使用RedisSink寫入集群時,發現居然不支持使用密碼,於是有了這篇筆記。 ...
  • 2016年是對話式設計之年。消息應用正以驚人的好評度和參與率,占領世界和app store的排行榜。每個社區產品、應用市場、點播服務、約會應用、社交游戲和電商產品,為了提高好評度、參與率和銷量,都已經或即將加入消息功能。 有大量關於對話式UI的討論,還有這種人機對話模式如何通過簡單的指令和文字反饋( ...
  • 視頻地址:https://learning.dcloud.io/#/?vid=0 開發工具:XbuilderX 官方教程:https://cn.vuejs.org/v2/guide/ 序言 Vue.js :漸進式JavaScript框架 Vue.js優點 1.體積小 壓縮後33K; 2.更高的運行效 ...
  • 1.shift+alt+f 格式化代碼(vscode) 2.css的複合選擇器 後代選擇器:選後代(不一定是兒子) 空格隔開 如ol li{樣式聲明} 更好地選擇想要的標簽 也可以用class表示 如 .nav.li.a 子選擇器 >親兒子 並集選擇器 逗號 div,p{樣式聲明} 最後一個選擇器 ...
  • Javascript基礎Day4 函數(下) 作用域(重點) 什麼是作用域,就是一個變數可以生效的範圍 變數不是在所有地方都可以使用的,而這個變數的使用範圍就是作用域 全局作用域 整個頁面起作用,在<script>內都能訪問到; 在全局作用域中有全局對象window,代表一個瀏覽器視窗,由瀏覽器創建 ...
  • Javascript基礎Day3 1、迴圈:重覆執行代碼 特征:有規律性的重覆執行相似代碼 為什麼要使用迴圈? 主要是為了減少頁面代碼 for迴圈: 語法: for(表達式1;表達式2;表達式3){ 代碼 } 表達式1:初始值,定義在for迴圈中需要用的變數 表達式2:判斷條件,判斷初始值是否滿足該 ...
  • Javascript基礎Day2 1、***自增自減運算符: ++、-- ++或--在變數之前時,先給當前變數做加1或減1的操作,然後在把計算結果做其他操作; ++或--在變數之後時,先拿當前變數去做其他操作,然後在給該變數做加1或減1的操作; 2、進位:也稱為進位計數制,常見的進位有二進位,八進位 ...
一周排行
    -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.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...