导航:首页 > 版本升级 > 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

友情链接