前端工具VScode+NodeJs+Git下载配置

下载vscode需要用到node.js和git

一、安装NodeJs

1.下载Nodejs

Node.js官网下载地址:https://nodejs.org/en/download/
Node.js历史版本下载地址:https://nodejs.org/zh-cn/download/releases/

tips:脚本语言需要一个解析器才能运行,JavaScript是脚本语言,在不同的位置有不一样的解析器,如写入html的js语言,浏览器是它的解析器角色。而对于需要独立运行的JS,nodejs就是一个解析器。

2.安装

安装的时候除了安装的路径修改为非系统盘外,其他默认。我安装到D:\Program Files\nodejs,默认情况下会安装npm(Node Package Manager),是一个项目依赖库的管理工具。

3.检测是否安装成功

打开命令行或者在vscode里“终端\新建终端”,在终端输入命令

node -v     //会输出当前node的安装版本
npm -v      //会输出当前npm的安装版本

二、安装Git

实际项目开发中,我们经常会用一些版本控制器来托管自己的代码

git官网下载地址:https://git-scm.com/downloads

可视化代码提交工具(小章鱼)
GitKraken 客户端:https://www.gitkraken.com/download

多分支提交步骤:

1.个人分支commit(push)
2.切换到master主分支pull
3.主分支meger到个人分支(如果没有错误)
4.个人分支meger到主分支
5.主分支push

Git常用命令和常见问题

三、安装VScode

VSCode一款免费开源的现代化轻量级代码编辑器,前端开发一大利器。

vscode官网下载地址:https://code.visualstudio.com/

官网下载
1.设置中文语言

-使用快捷键【Ctrl+Shift+P】,弹出的搜索框中输入【configure language】
-然后选择搜索出来的【Configure Display Language】,locale的属性值为“zh-CN”
-安装插件名为【Chinese (Simplified)Language Pack for Visual Studio Code】
-重启VSCode软件生效。

2.插件列表

1.Vetur
Vue多功能集成插件,包括:语法高亮,智能提示,Vue开发者必备。

image.png

2.vscode-icons
资源目录加上图标,增加不同文件类型辨识度,必备

image.png

3.Beautify
代码格式化

image.png

4.Auto Close Tag
自动闭合HTML标签

image.png

5.ESLint
javascript代码检测工具,可以配置每次保存时格式化js,但每次保存只格式化一点点,得连续按住Ctrl+s才可以

image.png

6.Prettier - Code formatter
只关注格式化,并不具有eslint检查语法等能力,只关心格式化文件(最大长度、混合标签和空格、引用样式等),包括JavaScript · Flow · TypeScript · CSS · SCSS · Less · JSX · Vue · GraphQL · JSON · Markdown

image.png

7.minapp
支持微信小程序标签、属性的智能补全

image.png

8.GitLens
可以查看代码提交记录

image.png
image.png

9.Code Runner
可以单独运行JS文件,在JS代码页面鼠标右键点击Run Code,即可输出JS运行结果

image.png

10.Easy LESS
平时开发写css比较麻烦,可以安装此插件,在目录中新建less文件进行开发,保存的时候自动回生成一个同名css文件,这样开发就方便多了,记得html引用的时候要引用css文件

image.png

11.cssrem

image.png

点击图示按钮,选择配置拓展设置,然后在Root Font Size设置基础值.例如ui设计图为750px,想要使用 vw将页面100等分,则1px=0.133rem(100/750),在使用的时候写10px时则会自动计算出1.3rem

image.png

可以自动根据px计算出对应的rem值,安装完此插件,及得重启vscode!否则不生效!


image.png

【后续继续补充插件】

3.创建用户代码片段(vue)

文件—>首选项—>用户代码片段, 然后再弹出的输入框中输入vue,然后回车(Enter)
在vue.json中写上代码片段,代码如下

{
    "vue-template": {
        "prefix": "vue",
        "body": [
            "<template>",
            "  <div class='${TM_FILENAME_BASE}'>",
            "  </div>",
            "</template>",
            "",
            "<script>",
            "export default {",
            "  name: '',",
            "  data () {",
            "    return {",
            "    }",
            "  },",
            "  created () { // 实例被创建之后执行代码",
            "",
            "\t},",
            "  computed: { // 计算属性",
            "",
            "\t},",
            "  components: { // 组件的引用",
            "",
            "\t},",
            "  methods: { // 方法",
            "",
            "\t},",
            "  mounted () { // 页面进入时加载内容",
            "",
            "\t},",
            "  watch: { // 监测变化",
            "",
            "\t}",
            "}",
            "</script>",
            "",
            "<style scoped lang='scss'>",
            "",
            "</style>"
        ],
        "description": "my vue template"
    }
}

使用的时候输入vue,会自动提示,按下回车键就可以快速生成预先定义的代码片段了


预先定义的vue代码片段

注意:此处配置了sass,所以在style中定义了lang=‘scss’,要是不使用scss,可以在vue.json文件中去掉即可。
vue项目sass-loader安装可参考:vue项目sass-loader安装
用户代码片段可参考好基友文章:使用vs code创建vue/html5-vue代码片段

4.1settings.json中配置(一)(配置用户代码片段时也可以使用)
{
    "update.mode": "manual",
    "editor.formatOnSave": true,  // #每次保存的时候是否自动格式化 
    "editor.fontSize": 14,
    "editor.fontFamily": "Consolas, 'Courier New', monospace",
    "editor.fontWeight": "bold",
    "editor.lineHeight": 18,
    "editor.letterSpacing": 0,
    "editor.tabSize": 2,   // 重新设定tabsize
    "editor.insertSpaces": true,
    "editor.detectIndentation": true,
    "editor.wordWrap": "on",
    "editor.renderLineHighlight": "gutter",
    "editor.roundedSelection": true,
    "editor.renderControlCharacters": true,
    "editor.renderIndentGuides": true,
    "editor.dragAndDrop": false,
    "editor.minimap.showSlider": "mouseover",
    "editor.minimap.renderCharacters": false,
    "editor.minimap.maxColumn": 90,
    "editor.cursorStyle": "line-thin",
    "editor.cursorBlinking": "expand",
    "editor.quickSuggestions": {
        "strings": true
    },
    "window.titleBarStyle": "native",
    "window.menuBarVisibility": "visible",
    "window.zoomLevel": 0,
    "window.title": "${rootName} - ${dirty}${activeEditorLong}",
    "workbench.colorTheme": "Monokai",
    "workbench.startupEditor": "welcomePage",
    "workbench.activityBar.visible": true,
    "workbench.statusBar.visible": true,
    "workbench.sideBar.location": "left",
    "workbench.editor.enablePreview": false,
    "workbench.editor.tabSizing": "fit",
    "workbench.colorCustomizations": {
        // "statusBar.background": "#333333",
        // "statusBar.foreground": "#adadad",
        "terminal.background": "#000000",
        "terminal.foreground": "#FFFFFF"
    },
    "breadcrumbs.enabled": false,
    "breadcrumbs.symbolPath": "off",
    "explorer.openEditors.visible": 0,
    "files.encoding": "utf8",
    "files.eol": "\r\n",
    "files.hotExit": "onExit",
    "files.autoSave": "off",
    "extensions.autoUpdate": true,
    "emmet.includeLanguages": {
        "javascript": "javascriptreact",
        "wxml": "html"
    },
    "javascript.format.insertSpaceBeforeFunctionParenthesis": true,
    "javascript.implicitProjectConfig.experimentalDecorators": true,
    //path
    "git.path": "D:\\Git\\bin\\git.exe",
    "terminal.integrated.shell.windows": "C:\\Windows\\sysnative\\cmd.exe",
    //px to rem
    "px-to-rem.px-per-rem": 75,
    "px-to-rem.only-change-first-ocurrence": false,
    "px-to-rem.number-of-decimals-digits": 10,
    "px-to-rem.notify-if-no-changes": true,
    //npm-scripts
    "npm-scripts.showStartNotification": false,
    //simpleIcons
    "simpleIcons.hideArrows": false,
    //vetur
    "vetur.format.defaultFormatter.js": "vscode-typescript",
    "vetur.format.defaultFormatter.html": "js-beautify-html",
    "vetur.format.defaultFormatterOptions": {
        "js-beautify-html": {
            "wrap_attributes": "auto"   //force-aligned:保存格式化换行  auto:保存格式化不换行
        },
        "prettyhtml": {
            "printWidth": 100,
            "singleQuote": false,
            "wrapAttributes": false,
            "sortAttributes": false
        }
    },
    "search.followSymlinks": false,
    "workbench.iconTheme": "vscode-icons",
    "eslint.autoFixOnSave": true, // #每次保存的时候将代码按eslint格式进行修复
    "eslint.validate": [
        {
            "language": "html",
            "autoFix": true
        },
        {
            "language": "vue",
            "autoFix": true
        },
        {
            "language": "javascript",
            "autoFix": true
        },
        {
            "language": "wpy",
            "autoFix": true
        }
    ],
    "prettier.eslintIntegration": true, // #让prettier使用eslint的代码格式进行校验
    "prettier.semi": false, //#是否显示代码最后一行的分号
    "prettier.singleQuote": true, //#使用单引号替代双引号
    "editor.formatOnType": true, //#让函数(名)和后面的括号之间加个空格
    "files.associations": {
        "*.wpy": "vue",
        "*.cjson": "jsonc",
        "*.wxss": "css",
        "*.wxs": "javascript"
    },
    "minapp-vscode.disableAutoConfig": true,
    "vetur.validation.template": false
}
4.2 settings.json中配置(二)

注: 此配置支持 CSS、HTML、JS 和 Vue 等文件的格式化。大家可以参考,然后结合自己的需求去配置。如果没有特殊需求,也可以拿去直接用

此配置文件需要安装以下几个vscode 扩展程序:ESLint 、Prettier - Code formatter、Vetur

{
  // tab 大小为2个空格
  "editor.tabSize": 2,
  // 100 列后换行
  "editor.wordWrapColumn": 100,
  // 保存时格式化
  "editor.formatOnSave": true,
  // 开启 vscode 文件路径导航
  "breadcrumbs.enabled": true,
  // prettier 设置语句末尾不加分号
  "prettier.semi": false,
  // prettier 设置强制单引号
  "prettier.singleQuote": true,
  // 选择 vue 文件中 template 的格式化工具
  "vetur.format.defaultFormatter.html": "prettyhtml",
  // 显示 markdown 中英文切换时产生的特殊字符
  "editor.renderControlCharacters": true,
  // 设置 eslint 保存时自动修复
  "eslint.autoFixOnSave": true,
  // eslint 检测文件类型
  "eslint.validate": [
    "vue",
    "html",
    "javascript",
    "typescript",
    "javascriptreact",
    "typescriptreact"
  ],
  // vetur 的自定义设置
  "vetur.format.defaultFormatterOptions": {
    "prettier": {
      "singleQuote": true,
      "semi": false
    }
  }
}

此配置参考:vscode 的代码格式化

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,772评论 6 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,458评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,610评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,640评论 1 276
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,657评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,590评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,962评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,631评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,870评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,611评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,704评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,386评论 4 319
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,969评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,944评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,179评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,742评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,440评论 2 342

推荐阅读更多精彩内容

  • 一:什么是闭包?闭包的用处? (1)闭包就是能够读取其他函数内部变量的函数。在本质上,闭包就 是将函数内部和函数外...
    xuguibin阅读 9,513评论 1 52
  • 1.配置用户名和邮箱: git config --global user.name "名字(英文)" git co...
    佩佩216阅读 1,097评论 0 0
  • 1-------- 走进前端 2-------- jQuery 3-------- CSS 4-------- A...
    依依玖玥阅读 2,315评论 0 34
  • 常用插件 Auto Close Tag 自动添加HTML / XML关闭标签(必备) Auto Rename Ta...
    Moorez阅读 7,420评论 0 42
  • 今天的南昌 风吹得刚好 温度低得刚好 被问起我的青春 万般皆你 若我们不曾彼此伤害 若我们也曾留下余地 总喜欢 年...
    旧城以西y阅读 152评论 0 1