babel

Vue 3 CLI - How to add babel polyfill for Object.entries

假如想象 提交于 2019-12-07 04:59:02
问题 I have a dependency (vue2-google-maps) which is causing issues with my Vue app in older browsers, throwing an error with Object.entries . Reading the Vue CLI Docs on polyfills, I see it mention trying to load the polyfill in babel.config.js . My babel.config.js : module.exports = { presets: [ ['@vue/app', { polyfills: [ 'es6.object' ] }] ] } Throws an error: Module build failed (from ./node_modules/babel-loader/lib/index.js): TypeError: [BABEL] /PROJECT_DIR/src/main.js: Cannot read property

How to transpile external dependency in angular-cli?

ε祈祈猫儿з 提交于 2019-12-07 03:43:56
问题 I have an angular-cli application and i use Angular IMask Plugin. Angular IMask Plugin wraps vanila imaskjs which has "package.module" in es2015 format alongside with "package.main" in es5 umd format. While building angular-cli takes "package.module" but does not transpile it with babel and therefore my app does not work in IE. How can i configure angular-cli to include imaskjs to be transpiled? It could be solved in webpack like this https://github.com/uNmAnNeR/imaskjs/issues/24 But what

详解如何从零开始搭建Express+Vue开发环境

人盡茶涼 提交于 2019-12-07 02:10:47
准备工作 1. 为前端选择合适的预处理工具和资源管理工具 预处理工具又分为 js 预处理工具和 css 预处理工具。Javascript 一直以来最为人诟病的一点就是缺乏原生的模块机制,所有 js 代码文件在被 html 页面引入后将共用同一个命名空间。所以才出现了各种“标准”尝试解决这个问题,但他们都不是原生的,需要额外的工具对代码进行特殊处理。虽然 ES6 终于引入了模块机制,但以现在的浏览器支持程度,还不足以“毫无顾虑地随拿随用”。所以 js 预处理工具最主要的工作就是帮助解决 js 的模块问题。而 css 预处理工具则很好理解,就是把 sass,less 或者 stylus 代码翻译、合并成 css 代码。 资源管理工具则是帮我们管理前端所需的各种资源文件(比如 css、js、图片、字体等等),便于我们引用。目前常用的解决方法是将他们直接编码进 js 代码中,然后像引用 js 模块一样引用它们。这可比手写各种 url 方便多了。 正如标题所说,我们将采用 Webpack,因为它具备上面所说的所有功能。此外还支持代码热替换,使修改代码后不用刷新页面也能在浏览器中立即看到效果。 2. 为后端选择合适的预处理工具 后端面对的都是 js 代码,不需要前端那样的资源管理工具,另外, Node 强迫你使用至少一种模块管理方案(CommonJS 或 ES6 的 import)

How do you change the file names output from babel-cli in directory mode?

别来无恙 提交于 2019-12-07 00:45:41
问题 Background: I have some tests that are written in ES2015, but will need to be transpiled to ES5 to run in PhantomJS due to the lack of ES2015 support in QtWebKit in v2.1. The 2.5 beta should support it. babel-cli: I can transpile a test to ES5 using babel-cli : babel main.test.js --out-file main.test.es5.js In order to transpile a directory of scripts, I can use: babel tests --out-dir compiled-tests This will output the transpiled test scripts to the compiled-tests directory. If I use the

深入浅出 ES6:ES6 与 Babel / Broccoli 的联用

筅森魡賤 提交于 2019-12-06 22:37:26
深入浅出 ES6 指的是添加在 ECMASript 标准第六版中的 JavaScript 编程语言的新特性,简称为 ES6。 虽然 ES6 刚刚到来,但是人们已经开始谈论 ES7 了,它未来的样子,以及新标准能提供哪些光鲜亮丽的特性。作为网络开发者,我们想的则是如何将这些特性都用上。在之前的 深入浅出 ES6 贴文 中,我们曾多次鼓励读者朋友使用 ES6 在一些小工具的帮助下编写代码。并这样调戏你们: 如果你想在网络上使用这个新语法,你可以使用 Babel (一款 JS 编译器)或 谷歌的 Traceur (一款编译器)将你的 ES6 代码翻译成网络友好型的 ES5。 今天,本文将向你展示详细的实现步骤。上面所提到的工具被称为转换编译器。转换编译器又被称为 源到源的编译器 —— 将编程语言在同一个抽象层面进行转换的编译器。转换编译器使得我们在使用 ES6 编写代码的同时,保证代码在每一个浏览器中都能够运行。 ##一、我们的救星——转换编译器 转换编译器使用简便。两个步骤就能解释清楚: 1.用 ES6 语法写出代码。 let q = 99; let myVariable = `${q} bottles of beer on the wall, ${q} bottles of beer.`; 2.将上面的代码作为转换编译器的输入,编译器处理之后得到下面的输出: "use strict"

Visual Studio Code 使用babel设置

半世苍凉 提交于 2019-12-06 21:59:24
要使用es6,需要通过babel将es6转成es5的代码,才能在浏览器上运行。为了设置babel,在网上找了很多教程,最后参考了两篇文章,摸索着成功了。 参考这两篇文章: 基于vscode的node的ES2015(ES6)运行环境搭建 - 冬瓜猫的专栏 - CSDN博客 ES6开发环境配置 - chhpt的博客 - CSDN博客 具体设置步骤: 1、全局安装babel-cli cnpm install -g babel-cli 2、安装babel插件 cnpm install --save-dev babel-preset-env 3、项目根目录下新建.babelrc文件,内容为 { "presets":["env"], "plugins":[] } 4、项目根目录下新建.vscode文件夹,在里面新建launch.json 里面内容为 设置来源于: ES6开发环境配置 - chhpt的博客 - CSDN博客 { "version": "0.2.0", "configurations": [ { "type": "node", "request": "launch", "name": "启动程序", "program": "${workspaceRoot}/src/index.js",//需要编译的文件 "stopOnEntry": false, "args": [], "cwd"

webpack小记

倖福魔咒の 提交于 2019-12-06 21:11:29
1.配置babel npm i @babel/core @babel/preset-env babel-loader -D 2.配置react npm i react react-dom @babel/preset-react -D 来源: https://www.cnblogs.com/chenmiaosong/p/11997716.html

Error in IE11 caused by babel polyfill - delegate.iterator.return

北战南征 提交于 2019-12-06 20:30:28
Hope to get some help with following: The problem @babel/polyfill causes error in IE11: SCRIPT1010: Expected identifier Debugger point on the line: if (delegate.iterator.return) { in the function maybeInvokeDelegate() in regenerator-runtime plugin. But Problem occures only in test environment . When I run my aplication locally, with exactly same build, same browser it works just fine. It contains same code, but it doesn't break anything. What I've already tried: babel-plugin-transform-member-expression-literals doesn't seem to help. I tried to replace @babel/polyfill with only necessary

一步步从零开始用 webpack 搭建一个大型项目

别来无恙 提交于 2019-12-06 19:34:39
开篇 很多人都或多或少使用过 webpack,但是很少有人能够系统的学习 webpack 配置,遇到错误的时候就会一脸懵,不知道从哪查起?性能优化时也不知道能做什么,网上的优化教程是不是符合自己的项目?等一系列问题!本文从最基础配置一步步到一个完善的大型项目的过程。让你对 webpack 再也不会畏惧,让它真正成为你的得力助手! 本文从下面几个课题来实现 课题 1: 初探 webpack?探究 webpack 打包原理 课题 2: 搭建开发环境跟生产环境 课题 3: 基础配置之loader 课时 4: webpack性能优化 课时 5: 手写loader实现可选链 课时 6: webpack编译优化 课时 7: 多页面配置 课时 8: 手写一个webpack插件 课时 9: 构建 ssr 项目地址 github.com/luoxue-vict… 我把每一课都切成了不同的分支,大家可以根据课时一步步学习 脚手架 npm i -g webpack-box 复制代码 使用 webpack-box dev # 开发环境 webpack-box build # 生产环境 webpack-box dll # 编译差分包 webpack-box dev index # 指定页面编译(多页面) webpack-box build index # 指定页面编译(多页面) webpack-box

webpack4.x最详细入门指南

故事扮演 提交于 2019-12-06 18:21:29
前言 本文主要从webpack4.x入手,会对平时常用的Webpack配置一一讲解,各个功能点都有对应的详细例子,所以本文也比较长,但如果你能动手跟着本文中的例子完整写一次,相信你会觉得Webpack也不过如此。 一、什么是webpack,为什么使用它? 1.1 什么是webpack? 简单来说,它其实就是一个 模块打包器 。 1.2 为什么使用它? 如果像以前开发时一个html文件可能会引用十几个js文件,而且顺序还不能乱,因为它们存在依赖关系,同时对于ES6+等新的语法,less, sass等CSS预处理都不能很好的解决……,此时就需要一个处理这些问题的工具。 Webpack就是为处理这些问题而生的,它就是把你的项目当成一个整体,通过一个入口主文件(如:index.js),从这个文件开始找到你的项目所有的依赖文件并处理它们,最后打包成一个(或多个)浏览器可识别的JavaScript文件。 二、一个简单的打包例子 2.1 准备工作 首先新建一个空文件夹,用于创建项目,在终端中进入文件夹,如下我在桌面建了一个名为webpack-project的文件夹,使用终端进入文件夹后(如果对命令行不太熟悉,可参考我的博客: 前端常用命令行 ),使用 npm init 命令创建一个package.json文件。 npm init 输入这个命令后,终端会问你一系列诸如项目名称,项目描述,作者等信息