问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

vscode怎么运行vue代码?

发布网友 发布时间:2024-09-25 17:28

我来回答

1个回答

热心网友 时间:2024-11-22 00:45

VSCode调试vue项目

先决条件

你必须安装好Chrome和VSCode。同时请确保自己在VSCode中安装了DebuggerforChrome扩展的最新版本。

在可以从VSCode调试你的Vue组件之前,你需要更新webpack配置以构建sourcemap。做了这件事之后,我们的调试器就耐笑逗有机会将一个被压缩的文件中的代码对应回其源文件相应的位置。这会确保你可以在一个应用中调试,即便你的资源已经被webpack优化过了也没关系。

打开config/index.js并找到devtool属性。将其更新为:

如果使用vue-cli3你需要设置vue.config.js内的devtool属性:

进入Debugger视图,添加Chrome配置,将内容替换成以下内昌卖容

设置断点

此处response返回数据

启动调试

在终端使用如下命令开启这个应用

进入Debug视图,选择‘vuejs:chrome’配置,然后按升尺F5或点击绿色的play按钮

随着一个新的Chrome实例打开,你的断点现在应该被命中了。

在VSCode中调试vue项目

1.VSCode中安装DebuggerforChrome扩展的最新版本:

2.在config/development.config.js(官网描述的是config/index.js,所以需要根据具体的项目而定)中添加如下配置:

3.点击运行调试按滑粗做钮,再点击设置按钮,修改launch.json文件,配置如下:

4.在vue项目的文件中设置断点

5.启动vue项目:

6.点击运行调试按钮,再点击运行小图标,这时会弹出新的chrome浏览器页面。

7.在弹出的浏览器窗口的页面进行操作,触发断点时会跳转掉凳灶vscode的断点处。

遇到的问题:信衡

官网中的launch.json配置中"url":"",url的端口是8080,这样调试时浏览器页面显示“无法显示此网页”。这里需要改成自己本地起的服务的端口号。

参考:

在VSCode中调试:

vscode怎么运行代码

1、通过快捷方式打开VisualStudioCode工具,然后新建静态页面。

2、创建一个静态页面table.html,并添加页面代码,然后保存,使用浏览器查看。

3、点击File菜单,选择OpenFolder,将项目导入到VisualStudioCode。

4、导入进去后,查看项目所依赖的包是否安装,项目配置文件。

5、新建一个终端窗口,在命令行输入npmrundev运行项目。

6、再点击File,然后新建一个TypeScript文件ct.ts,添加对应的代码。

7、好知打开凯袜如一个终端窗口,查看是否安装TypeScript插件盯启,利用tsc命令运行文件。

如何在vscode运行vue输入npminstall时没权限

找到vscode安装目录。右键-属漏悄性-兼容性-勾选以管理员身份运行即可。在vscode运行vue输入npminstall时没权限找到vscode安装目录。右键-属性-兼容性-勾选以管理员身份运闹扒行即可。权限是指为了保证功能的有效执行,用户必须具备液搜昌的,对文件进行处理的范围和程度。

如何优雅地使用VSCode来编辑vue文件

先来扒一扒使用PHPStorm遇到的问题:

vue文件虽然可以通过插件来解决高亮问题,但是script标签中的ES6代码的识别老是出问题,箭头函数有的时候能正确识别,有的时候会报错

无法正确识别vue文件中的jsx语法

无法正确识别和高亮vue文件style标签中使用的less语法

vue文件中template部分使用了大量的自定义标乱裂签(自定义组件)和自定义属性,会报一堆warning

经常性卡死

webpack实时编译的错误不能直接展示在代码编辑器内,还得自己到控制台中查看

如何安装vscode

很简单,传送门:官网下载安装

第一步,要支持vue文件的基本语法高亮

这里,我试过好3个插件:vue,VueHelper和vetur,最终选择使用vetur。

安装插件:Ctrl+P然后输入extinstallvetur然后回车点安装即可。

p.s:vscode的插件安装比PHPStorm的插件安装更快捷方便,安装完成后还不用重启整个程序,只要重新加载下工作区窗口就可以了。

安装完vetur后还需要加上这样一段配置下:

"emmet.syntaxProfiles":{

"vue-html":"html",

"vue":"html"

}

这时可以打开一个vue文件试试,注意下右下角状态栏是否正确识别为vue类型:

如差尘果被识别为text或html,则记得要点击切换下。

第二步,要支持vue文件的ESLint

可能还有人会问为什么要ESLint?没有lint的代码虽然也可能可以正确运行,但是lint作为编译前的一道检测成本更小,而且更快。此外,ESLint还有很多规范是帮助我们写出更加优雅而不容易出错的代码的。

jshint本来也是个不错的选择,但是ESLint对jsx的支持让我还是选择了ESLint.

安装插件:Ctrl+P然后输入extinstalleslint然后回车点安装即可。

ESLint不是安装后就可以用的,还需要一些环境和配置:

首先,需要全局的ESLint,如果没有安装可以使用npminstall-geslint来安装。

其次,vue文件是类HTML的文件,为了支持对vue文件的ESLint,需要eslint-plugin-html这个插件。可以使用npminstall-geslint-plugin-html来安装

接着,安装了HTML插件后,还需要在vscode中配置下ESLint:

"eslint.validate":[

"javascript",

"javascriptreact",

"html",

"vue"

],

"eslint.options":{

"plugins":["html"]

},

最后,别忘了在项目根目录下创建.eslintrc.json,如果还没创建,还可以使用下面快捷命令来创建:

这样一来vue中写的js代码也能正确地被lint了。

要是不小心少个括号之类的都可以有对应的报错:

多余import也都能报错:

还是蛮智能的。

第三步,配置构建任务

vue项目的构建我选择用webpack,不过,并不是直接使用命令行下的webpack而是使用了webpack的API写的node脚本。脚本主要有两个,一个是build/bin/build.js另一个是build/bin/watch.js分别是单次构建和实时构建。

于是乎,对应vscode中的tasks也是有两个:build和watch,简单配置如下:

{

//哗庆闭See

//forthedocumentationaboutthetasks.jsonformat

//use`Ctrl+P`andtype`task`+SPACE+taskNametorunatask

"version":"0.1.0",

"tasks":[

{

"taskName":"build",

"echoCommand":true,

"command":"node",

"args":[

"build/bin/build.js"

],

"suppressTaskName":true,

"isBuildCommand":true

},

{

"taskName":"watch",

"echoCommand":true,

"command":"node",

"args":[

"build/bin/watch.js"

],

"suppressTaskName":true,

"isBackground":true

}

]

}

这样配置好后,按Ctrl+Shift+B即可开始单次构建。不过单次构建比较慢(要10秒+),一般我都用实时构建:Ctrl+P然后输入taskwatch回车即可开始实时构建。实时构建除了第一次比较慢,其他时候还是非常快的,一般1秒内就可以构建好。

最后,webpack构建错误提示

webpack构建失败后一般都会有错误提示,会显示在输出窗口中:

为啥是彩色的?因为装了OutputColorizer这个插件。

当然,这样还是不够方便--实时构建是后台运行的,“输出”窗口一般也都是在后台,每次保存完文件还得点开岂不麻烦。

要是能做到像ESLint一样直接把错误标到编辑器上面就好了。真的可以吗?翻了下vscode的文档,发现有神奇的problemMatcher--可以对任务输出进行解析,解析出的问题会显示在“问题”窗口中,如果还有文件名行号和列号,则会在源代码编辑窗口中对应的位置标出来。

先放个最终效果:

在这个文件的第32行,import了一个不存在的模块,这样的错误在ESLint中当然是检查不出来的,然而在webpack的实时构建中会报错:

这个事情的困难在于两点:

如何通过problemMatcher把这个错误给抓出来?

如何找到错误对应的行号?(如果可能的话,还有列号)

webpack的错误输出格式并不是完全统一的,而且有些还没有行号--一方面可能是webpack的bug,另一方面vue文件在构建的时候会拆成template,script和style三个方面进行构建,报错的行号可能对不上。

最终我的解决方案是对webpack的错误重新格式化输出,然后匹配:

首先,重新格式化输出需要format-webpack-stats-errors-warnings这个包(偶新写的)

npminstall--save-devformat-webpack-stats-errors-warnings

然后,到build/bin/build.js和build/bin/watch.js中在webpack构建完成的回调函数中增加这个格式化后的输出:

更多使用介绍见github

最后,在.vscode/tasks.json中,每个任务下添加problemWatcher:

//...

{

"taskName":"build",

//...

//build任务的:

"problemMatcher":{

"owner":"webpack",

"fileLocation":[

"relative",

"${workspaceRoot}"

],

"pattern":{

"regexp":"^!(\\w+):(\\S+)?:(\\d+),(\\d+)(?:~(?:(\\d+),)?(\\d+))?:(.*)$",

"severity":1,

"file":2,

"line":3,

"column":4,

"endLine":5,

"endColumn":6,

"message":7

}

}

}

{

"taskName":"watch",

//...

//watch任务的:

"problemMatcher":{

"owner":"webpack",

"fileLocation":[

"relative",

"${workspaceRoot}"

],

"pattern":{

"regexp":"^!(\\w+):(\\S+)?:(\\d+),(\\d+)(?:~(?:(\\d+),)?(\\d+))?:(.*)$",

"severity":1,

"file":2,

"line":3,

"column":4,

"endLine":5,

"endColumn":6,

"message":7

},

"watching":{

"activeOnStart":true,

"beginsPattern":"^\\s*Webpackbeginrun",

"endsPattern":"^\\s*Buildcompleteat"

}

}

//...

}

//...

注:在watch任务中,为了匹配何时开始和何时结束,我在webpack构建的run和watch时增加了一个console.log('Webpackbeginrun')的打印,而在构建完成后增加了一个console.log("Buildcompleteat..")的打印。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
如何查被录取到的专业 怎样查被录取的专业 录取后怎样查询录取的专业 录取专业怎么查 已被录取怎么查专业 ghs网络语什么意思_ghs网络语意思出处含义介绍 纸箱企业管理软件 ghs什么意思网络(ghs什么意思网络用语) 《喜羊羊与灰太狼》大结局 0与任何数相加都得原数吗? 关于编程的所有名称(编程相关) 为什么要做一带一路 一带‏一路政策仅限于外贸服务吗? ...可是只知道他的陌陌号,怎么才能从陌陌号中知道他的手机号_百度... ...推荐一下,美的或者格力,要求是变频的,1P-1.5P的样子,价格2000-2800... 1.5p空调和1p空调的区别是什么? 1P和1.5P的空调价格一样吗,大概差多少钱? 在银川市摆地摊需要什么手续? 鼻炎鼻子不通气怎么治疗 慢性单纯性鼻炎的主要症状 鼻塞鉴别诊断 长年交替性鼻塞怎么回事 晚上睡觉交替性鼻塞怎么回事 左右鼻子交替不通气的原因 问道我的娃娃也不知道是什么系的体95物伤701法伤711速度93防御233气血2... 有没有懂电脑的,为什么我的机器只能用搜狗打字,我下载了五笔,没办法... 编程常用的软件有哪些? 标准论文格式范例 普通期刊发表论文排版格式! 期刊论文的排版格式,供参考 大家知不知道一部韩国一部青春爱情剧,背景是大学,男主角和女主角第 韩剧《没关系是爱情啊》第12集中女主穿的衣服和拿的斑马纹包包是什么牌... 韩剧《没关系是爱情啊》第四集里,女主睡觉,男主陪在旁边时的那首歌... 灵活就业退休金计算的公式是什么 韩剧《没关系,是爱情啊》里面女主的壁画图片在哪集有出现啊?想照样子让... 韩剧《没关系是爱情啊》第一集里男女主角在电视台直播录节目那段完了... macbook系列选哪个好2023苹果笔记本选购攻略 苹果中国官网上架2020款翻新13寸MBP:最高便宜近3500元,值得入手吗... 把0,1,2,3,4,5,6,7,8,9十个数填在口里,每个数字只能用一次。口一口=口... 1,2,3,4,5,6,7,8, 口十口二9 口十口二7 口一口二1 想一想,笪一箅。把1,2,3,4,5,6,7,8,9,10十个数填在口里,每个数只用一... 将123456789填入口÷口x口=口口,口十口一口=口,数字不能重复 中俄免签旅游攻略,抚远旅游攻略最新 俄罗斯与中国的时差多少 共建清洁美丽世界必须什么 中国在应对气候变化上的减排措施与国际合作如何影响全球低碳发展? 营运客车9座以下三者险保额5万多少钱? 小轿车多少年报费的啊 屯留区什么时间解封 山西省长治市屯留县路村乡西兴旺村属于疫情中高地区吗