首页 > 基础知识 > 正文

babel js,怎么在webstorm上利用babel实现自动编译es6文件

2020-04-20 13:22:57  来源:http://www.yummyboobs.net  编辑:admin

怎么查看babel-preset-es2015有没有安装

babel-preset-2015打开636f7079e799bee5baa6e79fa5e9819331333361323638babel-preset2015插件一看,一共20个插件。熟悉es2015语法的同志一看,多多少少能从字面意思知道某个插件是用于哪种语法的转换babel-plugin-transform-es2015-template-literals=>es2015模板babel-plugin-transform-es2015-literalsbabel-plugin-transform-es2015-function-name=>函数name属性babel-plugin-transform-es2015-arrow-functions=>箭头函数babel-plugin-transform-es2015-block-scoped-functions=>函数块级作用域babel-plugin-transform-es2015-classes=>class类babel-plugin-transform-es2015-object-super=>super提供了调用prototype的方式babel-plugin-transform-es2015-shorthand-properties=>对象属性的快捷定义,如obj={x,y}babel-plugin-transform-es2015-computed-properties=>对象中括号属性,如obj={['x]:1}babel-plugin-transform-es2015-for-of=>对象forof遍历babel-plugin-transform-es2015-sticky-regexbabel-plugin-transform-es2015-unicode-regexbabel-plugin-check-es2015-constants=>const常量babel-plugin-transform-es2015-spread=>对象扩展运算符属性,如foobarbabel-plugin-transform-es2015-parameters=>函数参数默认值及扩展运算符babel-plugin-transform-es2015-destructuring=>赋值解构babel-plugin-transform-es2015-block-scoping=>let和const块级作用域babel-plugin-transform-es2015-typeof-symbol=>symbol特性babel-plugin-transform-es2015-modules-commonjs=>commonjs模块加载babel-plugin-transform-regenerator=>generator特性本回答被网友采纳

vue-loader 放在babel之前吗

angular: 我觉得angularjs的学习上手周期比较长,可能遇到问题,都无法立刻解决,而且编码的质量明显的很差,如果团队没有制定规范,那写出来的代码就没法看。

如何用babel来编译ES6的代码

习惯了WebStorm的话..我就假设题主会用Node.js和npm啦~一句话总结:用WebStorm自带的File Watcher功能+Babel实现自动转换ECMAScript 6代码为ES5代码我是这么配置的..就先新建一个Empty Project,然后在src目录下新建了一个main.js;// 这一步不是必须的 只是刚上手的话 从空项目开始自己配置会少很多干扰Then..进入设置,把JavaScript language version改成ECMAScript 6;再Then..写一段ES6代码'use strict';// node直接运行ES6代码时,如使用了ES6的一些关键字,比如let,就需要e69da5e6ba90e79fa5e9819331333363366230严格模式,否则会报错// 这是没有严格模式时候的错误提示// SyntaxError: Block-scoped declarations (let, const, function, class) not yet supported outside strict modefunction* fibs() {// Generator Functionlet a = 0;let b = 1;while (true) {yield a;// [a, b] = [b, a + b];b = a + b;a = b - a;}}let [first, second, third, fourth, fifth, sixth] = fibs();console.log(first, second, third, fourth, fifth, sixth);现在IDE会出现一个File watcher提示条先别点Add watcher!我们要先去装babel~首先在根目录新建一个package.json{"name": "test-project","version": "1.0.0"}然后打开IDE的Terminal,安装babel-clinpm install --save-dev babel-cliGood! 现在可以去点Add watcher啦,点完之后会弹出一个框,其中大部分设置IDE都帮你搞定了下面第三行,Program那一项,填$ProjectFileDir$/node_modules/.bin/babel然后点OK,这个时候你就会发现左边多出来一个main-compiled.js文件啦但是还没搞定!现在只是搞定了自动转换的功能,系统默认把ES6 compile成了ES6..(你应该会发现compile出来的东西跟原来的一样..Generator函数并没有被转换成ES5的格式)所以我们需要安装Babel的preset以正确识别ES6代码;和刚才一样,在npm安装babel的ES6的presetnpm install --save-dev babel-preset-es2015在根目录下新建一个.babelrc文件(就是babel在当前项目的配置文件),写上{"presets": ["es2015"]}OK搞定!保存再回去看一下main-compiled.js 应该就变成这个样子啦,现在你在main.js里直接写ES6代码,IDE都会自动compile成ES5的代码在这里啦~注意:想直接用Node.js运行ES6代码还是有些问题..因为这段代码用的ES6的解构赋值Node.js还未完全支持,需要在运行的时候加入一些tags(以开启Node.js的相关试验特性),具体可以参考Node.js官网对ES6的说明:ECMAScript 2015 (ES6)。

怎么在webstorm上利用babel实现自动编译es6文件

1.在webstorm中创建项目.2.在项目的根目录下创建package.json {"name": "test-project","version": "1.0.0"}3.打开webstorm的Terminal (快捷键alt+f12),安装babel-cli.(需要先安装node.js)npm install --save-dev babel-cli4.File-->Settings-->Languages&Frameworks-->JavaScript JavaScript language version 选择ECMAScript 6.5.File-->Settings-->Tools-->Files Watchers 中加上Babel6.将Files Watchers 中 Babel 中的Program 改为$ProjectFileDir$\node_modules\.bin\babel.cmd (windows中)7.在Terminal中,安装babel的ES6的presetnpm install --save-dev babel-preset-es20158.在根目录下新建一个.babelrc文件(就是babel在当前项7a686964616fe4b893e5b19e31333363373665目的配置文件),我创建的是babel.babelrc{"presets": ["es2015"]}9.ok备注:我在项目中将Files Watchers 中 Babel 中File type:JavaScript 更改为 JSX HarmonyArguments:--source-maps --out-file $FileNameWithoutExtension$-compiled.js --presets es2015 $FilePath$更改为--source-maps --out-file $FileNameWithoutExtension$.js --presets es2015 $FilePath$Output paths to refresh :$FileNameWithoutExtension$-compiled.js:$FileNameWithoutExtension$-compiled.js.map更改为$FileNameWithoutExtension$.js:$FileNameWithoutExtension$.js.map

gulpfile.babel.js 里的babel是什么意思

gulpfile.babel.js 里的babel是什么意思注意赋值表达zd式和赋值语句的区别。赋值表达式是一种表达式,它可以出现在任何允许表达式出现的地方,而赋值语句则不能。下述语句是合法的: if((x=y+5)>0) z=x;语句的功能是,若表达式x=y+5大于0则z=x。下述语句是非法的: if((x=y+5;)>0) z=x;因为x=y+5;是语句,不能出现在表达式中。4.3 数据输入输出的概念及在C语言中的实现1) 所谓输入输出是以内计算机为主体而言的。2) 本章介绍的是向标准输出设备显示器输出数据的语句。3) 在C语言中,所有的数据输入/输出都是由库函数完成的。 因此都是函数语句。4) 在使用C语言库函数时容,要用预编译命令#include将有关“头文件”包括到源文件中。使用标准输入输出库函数时要用到 “stdio.h”文件,因此源文件开头应有以下预编译命令:#include< stdio.h >