導航:首頁 > 版本升級 > gulpsrc多個文件夾

gulpsrc多個文件夾

發布時間:2024-10-24 00:37:21

⑴ 用vscode寫javascript的教程(vscode搭建javascript開發環境)

如何用visualstudiocode調試javascript

vscode使用task.json來配置項目的構建過程。

打開命令面板(Ctrl+Shift+P)選擇RunBuildTask(Ctrl+Shift+B)

如果當前工作空間沒有task.json配置文件此時會出現提示

選擇ConfigureTaskRunner自動創建task.json。該配置文件在工作空間的.vscode目錄下,這個目錄也是存放vscode配置的文件夾。

vscode默認的task配置文件中給出了執行tsc和gulp模板配置。簡單介紹一下task.json的寫法

{

"version":"0.1.0",

//要使用的命令或者可執行文件的路徑

"command":"tsc",

//對應command參數,是否是一個命令,否則為執行文件路徑

"isShellCommand":true,

//是否在執行task任務時顯示控制台窗口

"showOutput":"always",

//對應command參數指定程序的參數

"args":["-p","src","--allowJs","-w"],

//不太明白這個,基本用不到

"problemMatcher":"$tsc",

}

vscode怎麼運行javascript

1、直接按F5可以調試的方法或者點擊運行按鈕(可以直接運行html文件或者js文件)

在launch.json文件中的配置如下:

{

"version":"0.2.0",

"configurations":[{

"name":"谷歌瀏覽器",//運行html文件,用谷歌瀏覽器打開

"type":"chrome",

"request":"launch",

"url":"${file}",

"sourceMaps":true,

"webRoot":"${workspaceRoot}"

},

{

"name":"nodeLauch",//單獨調試js,即可以直接運行js

"type":"node",

"request":"launch",

"program":"${file}",//這個配置成你要調試的文件、${file}當前打開的文件

"stopOnEntry":false,

"args":[],

"cwd":"${workspaceRoot}",

"runtimeExecutable":null,

"runtimeArgs":[

"--nolazy"

],

"env":{

"NODE_ENV":"development"

},

"console":"internalConsole",

"preLaunchTask":"",

"sourceMaps":false,

"outDir":null

}

]

}

2、第二種方法?Ctrl+Shift+B?快捷鍵運行html文件,在Tasks.json中配置如下:

{

"version":"0.1.0",

"command":"",

"isShellCommand":false,

"args":["${file}"],

"showOutput":"always",

"windows":{

"command":"C:/Users/shannonliang/AppData/Local/Google/Chrome/Application/chrome.exe"

},

"tasks":[{

"taskName":"webserver",

"isBuildCommand":true,

"showOutput":"always"

}]

}

3、如果第二種方法,不想每次都按這個快捷鍵,請參考npm配置node服務方法:

如何在vscode中使用nodejs

一、使用Express創建項目[這兩步都在dos模式下執行]

1,安裝全局的Express!(已安裝請忽略)

npminstall-gexpress

2,創建項目

創建項目(創建文件夾名稱ExpressApp)

expressExpressApp

小插曲:如果你習慣了linux下的環境,你可以在自己電腦上安裝cmder(不知道是什麼東西,請自行網路),這個命令行工具排版漂亮,不像微軟的dos那麼枯燥!我用的是Mini版本,如果你想體驗linux下的全部功能,可以下載full版本。

3,下載第三方包

(1)cmd命令行切換到項目目錄

cdd: odejsExpressApp

(2)根據需要編輯package.json,運行如下指令安裝第三方包

npminstall

在項目目錄下node_moles可見安裝好的第三方包

ExpressApp

|–node_moles

(3)運行項目

npmstart

輸出如下:

[email protected]:Nodejs_WorkspaceExpressApp

node./bin/www

註:npmstart指令會自動執行node./bin/www

在瀏覽器中輸入,可訪問Express歡迎頁面

二、使用VSCode開發Nodejs

1、VSCode打開Nodejs

coded: odejsExpressAppcode.

註:在當前項目下創建ExpressApp.bat,輸入「code.」即可,下次直接此文件直接使用VSCode打開Nodejs項目

2、添加智能提示

VSCode打開Nodejs項目,默認是沒有智能提示。

(1)使用TypeScriptDefinitionManager(TSD)在項目中下載所需的tsd文件,VSCode中打開時有智能

全局安裝tsd(如已安裝忽略)

npminstall-gtsd

下載所需的組件提示(以下載node、express、requirejs提示為例)

tsdquerynode--actioninstalltsdqueryexpress--

註:

①多個提示組件在query參數後可以空格分隔簡寫為tsdquerynodeexpress–actioninstall

②組件會項目目錄下添加typings文件夾

|–typings

|–node

|–express

|–require

(2)添加js文件引用的智能提示

假如在文件引用另外一個文件common.js時,文件頭添加如下

{//See//.jsonformat"compilerOptions":{"target":"es6","mole":"commonjs","allowSyntheticDefaultImports":true},"exclude":["node_moles","bower_components","jspm_packages","tmp","temp"]}

(小提示,如果你引入了rquire,那麼你的編輯器右下方會顯示一個「燈泡」的提示,你只要點燈泡就不用自己苦逼的寫這個配置文件了)

此配置表示代碼服從ES5標准並使用commonjs規范,發VScode下有此配置之後,可以實現在文件中對require引用js文件的智能提示。(我測試時無此配置也會有智能提示,不清楚什麼原因)

vscode編輯javascript如何多行操作編輯?

在VisualStudioCode中,您可以通過使用多行編輯來快速編輯多行JavaScript代碼。您可以通過以下方法使用多行編輯:

單擊滑鼠左鍵在第一行代碼上。

在鍵盤上按下Shift鍵,並同時單擊滑鼠左鍵在最後一行代碼上。

在鍵盤上按下Alt鍵,並單擊滑鼠左鍵在任意多行代碼上。

通過在編輯器中單擊滑鼠右鍵,並選擇「多行編輯」來選擇多行代碼。

在選擇多行代碼後,您可以使用編輯器的編輯功能(如復制、粘貼、剪切、刪除等)來編輯所選行。您還可以使用編輯器的格式化功能(如自動縮進、代碼折疊等)來整理所選行的格式。

vscode使用教程是?

vscode使用教程:

安裝:

安裝的東西沒什麼好說的,自行下載安裝吧,伙計。

配置:

用戶配置:

vscode的用戶配置分3個級別,分別是默認配置、全局配置和工作區配置,優先順序也依次遞增。對於團隊項目,一些規范可以通過項目目錄下建一個.vscode/setting.json文件進行配置。

快捷鍵綁定:

參考官方文檔,文檔中列出了所有指令對應的快捷鍵。快捷鍵我只修改了兩個與系統軟體沖突的。

代碼片段:

這個功能很像webstorm的livetemplate的功能,雖然提示的時候沒有webstorm那麼精準和順手,不過總的來說,夠用。

設置語法遵循TextMate代碼片段語法,你可以通過安裝別人寫好的snippet插件,如果別人寫的snippet你用得不爽,那麼自己寫也簡單。

之前使用這個代碼片段有個痛點就是只能用方向鍵上下選擇提示,如果能使用ctrl+n/p上下選擇的話就更舒服了,沒想到現在已經支持了。

另外,有沒有人知道怎麼設置代碼提示內容,比如輸入result提示了XPathResult是什麼鬼。

插件:

4個月前剛知道vscode的時候,那時感覺插件還沒有那麼多,現在重新看了一下,真是應有盡有。牛逼啊!

這里介紹幾個我用過覺得不錯的插件

用戶配置同步VisualStudioCodeSettingsSync。Git歷史GitHistory。

文件圖標vscode-icons。縮進輔助線Guides。

VisualStudioCode(以下簡稱vscode)是一個輕量且強大的代碼編輯器,支持Windows,OSX和Linux。

內置JavaScript、TypeScript和Node.js支持,而且擁有豐富的插件生態系統,可通過安裝插件來支持C++、C#、Python、PHP等其他語言。

vscode不能創建javascript

vscode不能創建javascript

vscode創建js文件的方法:首先點擊vscode中的【新建文件】;然後選擇文件類型為【js】;最後在彈出的界面中選擇語言模式為【javascript】即可。

⑵ gulp的簡單介紹與應用

了解並使用 Gulp 構建工具可以顯著提升開發效率,其核心是基於流,提供了一種簡潔、高效的方式進行項目構建。下面簡要介紹 Gulp 的安裝、基本用法及插件使用。

首先,確保安裝了 Node.js 和 npm。安裝好後,創建項目文件夾並初始化 npm。全局安裝 Gulp(如果尚未安裝),然後按照步驟搭建項目基本框架。安裝 Gulp 到項目中,並創建 gulpfile.js 文件作為自動化任務的中樞。

Gulp 提供一系列 API 功能,如 src()、dest()、series() 等,用於資源映射、文件系統操作和任務執行。以 src 文件夾下的 HTML 文件為例,使用 gulp 任務將它們復制到 dist 目錄,通過命令運行 Gulp。查看 dist 文件夾,HTML 文件已復製成功。在瀏覽器打開 dist 下的 HTML 頁面,發現缺失 CSS 和 JS 文件。通過同樣方式將 CSS 和 JS 文件復制至 dist,運行 Gulp 後,頁面顯示樣式和輸出。

Gulp 插件是豐富其功能的重要方式。在官網查找 Gulp 插件,例如 gulp-htmlclean、gulp-clean-css、gulp-uglify、gulp-imagemin、gulp-less、gulp-strip-debug 等。安裝並導入插件後,可以實現 HTML、CSS、JS 的壓縮,圖片的壓縮,以及 less 文件轉換為 css 等優化操作。以 gulp-htmlclean 為例,安裝後在 gulpfile.js 中引入插件,運行 Gulp,對比壓縮前後 HTML 文件,直觀看到壓縮效果。其他插件的使用方法類似,通過命令安裝、導入並執行相應任務。

Gulp 還提供了 watch() API,用於監聽文件變動。在開發過程中,當修改 HTML、CSS、JS 文件時,無需手動運行 Gulp,文件變動後自動觸發任務執行,提升開發效率。通過配置監聽事件,設置 Gulp 運行,更改文件後,dist 文件夾下相應文件自動更新。同時,開啟自動刷新功能,確保實時預覽更改效果。

Gulp 的自動化構建和文件監聽功能,大大簡化了前端開發的構建流程,提高了工作效率。通過合理利用 Gulp 的插件和 API,可以實現高效的代碼優化、自動化構建和實時反饋,使開發過程更加流暢。

⑶ 詳解如何在微信小程序中愉快地使用sass



前言

在微信小程序中,css是用wxss來表示,但寫法基本一致。需要注意的是wxss擴展了兩個特性,分別是:

尺寸單位
樣式導入
具體可參考wxss,此處不做過多贅述。

為了方便打包sass,我們使用gulp來處理我們的scss文件,將其轉換為wxss。

目錄結構

在開發中,我們一般會有一個src源代碼目錄,一個dist目錄用來輸出我們打包的代碼。而本次講解用到的目錄結構如下:



build目錄用來配置我們的打包參數,目前裡面只有一個config.js文件
dist目錄為打包輸出的目錄,也是小程序運行的目錄
gulpfile.js配置打包的任務
src就是我們的源代碼目錄
src的目錄結構如下:



安裝依賴

yarn add gulp gulp-sass gulp-rename gulp-replace gulp-tap gulp-clean -D
gulp和gulp-sass為打包sass必須,gulp-rename則負責把scss後綴改為wxss,gulp-replace負責內容的替換(這個後面會講到),gulp-tap用來處理當前執行的文件,gulp-clean負責清除我們不需要的文件。

sass打包配置

gulp配置打包sass非常簡單,代碼如下:

const gulp = require('gulp');
const sass = require('gulp-sass');
const rename = require('gulp-rename');
gulp.task('sass', () => gulp.src('./src/**/*.{scss,wxss}')
.pipe(sass().on('error', sass.logError))
.pipe(rename({
extname: '.wxss'
}))
.pipe(gulp.dest('./dist'))
);
這樣就可以完成了sass的配置,但是這樣會有問題。前面講到了wxss是支持樣式導入的,也就是說import語法wxss是支持的,但css不支持,因此sass打包會把import的文件打包到當前文件,從而導致當前文件的體積變大。由於微信限制單包代碼不能超過2M,因此當css越寫越多的時候,這種打包方式勢必會使樣式文件越來越大。

解決import導入問題

那如何解決import的導入問題呢,其實也比較簡單,說白了就是sass處理的時候,讓其不處理import部分的語句就可以了。有兩種方式可以做到,第一種是改寫sass處理的源碼,當遇到import語句時跳過。第二種是,在把文件交給sass處理前,我們先把import語句部分注釋掉,這樣sass處理的時候就會忽略了,當sass處理完成後,再把注釋掉的語句打開即可。顯然第一種成本比較高,也不好維護。我們採用第二種,代碼如下:

const gulp = require('gulp');
const sass = require('gulp-sass');
const replace = require('gulp-replace');
const rename = require('gulp-rename');
const clean = require('gulp-clean');
const tap = require('gulp-tap');
const path = require('path');
const config = require('./build/config');
const hasRmCssFiles = new Set();
gulp.task('sass', () => gulp.src('./src/**/*.{scss,wxss}')
.pipe(tap((file) => {
// 當前處理文件的路徑
const filePath = path.dirname(file.path);
// 當前處理內容
const content = file.contents.toString();
// 找到filter的scss,並匹配是否在配置文件中
content.replace(/@imports+['|"](.+)['|"];/g, ($1, $2) => {
const hasFilter = config.cssFilterFiles.filter(item => $2.indexOf(item) > -1);
// hasFilter > 0表示filter的文件在配置文件中,打包完成後需要刪除
if (hasFilter.length > 0) {
const rmPath = path.join(filePath, $2);
// 將src改為dist,.scss改為.wxss,例如:'/xxx/src/scss/const.scss' => '/xxx/dist/scss/const.wxss'
const filea = rmPath.replace(/src/, 'dist').replace(/.scss/, '.wxss');
// 加入待刪除列表
hasRmCssFiles.add(filea);
}
});
console.log('rm', hasRmCssFiles);
}))
.pipe(replace(/(@import.+;)/g, ($1, $2) => {
const hasFilter = config.cssFilterFiles.filter(item => $1.indexOf(item) > -1);
if (hasFilter.length > 0) {
return $2;
}
return `/** ${$2} **/`;
}))
.pipe(sass().on('error', sass.logError))
.pipe(replace(/(/**s{0,})(@.+)(s{0,}**/)/g, ($1, $2, $3) => $3.replace(/.scss/g, '.wxss')))
.pipe(rename({
extname: '.wxss',
}))
.pipe(gulp.dest('./dist')));
在處理import的時候,還有個地方是需要注意的。在sass中,import除了能引入css外,也可以引入變數,函數。因此,我們在處理的時候也需要注意區分,變數和函數最好有一個獨立的文件目錄存放,並且在import的時候,對於變數和函數,是必須交給sass處理的,也就是不能注釋掉。因此,在上面的代碼中,我們可以看到,我們引入了build目錄下的config,其配置了sass變數和函數存放的位置,這樣我們在打包的時候,遇到這樣的import語句,我們就跳過,交給sass處理,否則就代表其是引入了共用的樣式文件,這樣我們交給sass處理前,就先將其注釋掉,sass處理完成後再把注釋打開。另外,import的可能是一個scss文件,但在轉成wxss的時候,已經將其後綴改為了wxss,因此,在將注釋打開的時候也需要更改相應的引入,這也就是gulp-replace包的作用。config的配置如下:

mole.exports = {
cssFilterFiles: ['scss/var.scss'],
};
清理無用的wxss文件

前面講了,我們在sass中可能會定義一些變數,函數,這些文件一會一並打包到dist目錄,但其內容是空的,這時候我們就需要對其進行清理,前面在打包過程中,我們有一個set變數hasRmCssFiles記錄了相應的文件,這樣我們遍歷這個變數即可刪除相應的文件,代碼如下:

gulp.task('clean:wxss', () => {
const arr = [];
hasRmCssFiles.forEach((item) => {
arr.push(item);
});
return gulp.src(arr, { read: false })
.pipe(clean({ force: true }));
});
總結

wxss的特性
sass打包配置以及如何處理import語句
sass變數、函數的文件清理

閱讀全文

與gulpsrc多個文件夾相關的資料

熱點內容
如何將網站扒下來 瀏覽:193
編程中什麼叫做抓包 瀏覽:511
樂視2解賬號密碼忘了 瀏覽:670
燒錄卡升級 瀏覽:573
qq游戲網名大全5個字 瀏覽:146
win10文字調大 瀏覽:29
wow608090刷怪升級 瀏覽:281
資料庫技術主要應用於哪些領域 瀏覽:22
win10無法安裝net40 瀏覽:86
洛陽怎麼做網站 瀏覽:676
javaequals返回 瀏覽:232
如何使文件內容更加正式 瀏覽:882
dnf85版本男彈葯pk 瀏覽:84
手機號密碼怎麼設置 瀏覽:597
需求文件內容都有哪些 瀏覽:977
文件名和路徑不一樣 瀏覽:879
夢幻西遊孩子快速升級 瀏覽:950
快題庫app怎麼清空做題記錄 瀏覽:554
自動升win10如何還原 瀏覽:812
小程序調用onload 瀏覽:337

友情鏈接