Tag: babeljs

Promise.all安装在babel ES6的实现中

我使用babel来传递我的node.js@0.10.x代码,而且我被承诺所困。 我需要allSettled可以在q和bluebird或allSettled使用的allSettledfunction。 在巴贝尔的核心js的Promise ,没有allSettled方法。 目前我使用q.allSettled作为解决方法: import { allSettled } from 'q'; 在babel polyfill中是否有这样的东西? 或者,这是一个很好的algorithm,我尝试实现?

Babel 6 CLI:意外的令牌导出?

我试图通过它的CLI使用babel-node运行Babel,但我不断收到Unexpected token export错误。 我明白巴别塔6是关于插件,我需要通过.babelrc设置插件,但它似乎不能正常工作。 所以这是我的问题: 我应该使用syntax-export-extensions插件吗? 我也尝试使用替代方法, 通过package.json设置插件,但仍然没有运气。 另外,Babel 6的CLI是否有全局的.babelrc选项? 如果我必须为每个需要它的项目安装插件,这似乎很乏味… 对于那些对我想出口的东西感到好奇的人,那么这里就是这个class级: 'use strict'; class Factorial { static solve (num) { if(num === 0) return 1; else return num * Factorial.solve(num – 1); } } console.log(Factorial.solve(5)) export default Factorial;

节点在asynchronous函数完成之前退出

我有一个函数返回一个承诺,我试图从一个asynchronous函数中等待它。 问题是程序立即完成,而不是等待承诺。 asynchronoustest.js: function doItSlow() { const deferred = new Promise(); setTimeout( () => { console.log( "resolving" ); deferred.resolve(); }, 1000 ); return deferred; } async function waitForIt( done ) { console.log( "awaiting" ); await doItSlow(); console.log( "awaited" ); done(); } waitForIt(() => { console.log( "completed test" ); }); console.log( "passed by the test" ); […]

asynchronous/等待拒绝承诺

我刚刚开始async/await并遇到问题。 我可以按预期做到: async function x() { let y = await Promise.resolve(42); return y; } 但是当我拒绝一个Promise : async function bad() { try { await Promise.reject('bad'); } catch(bad) { bad; //AssertionError: TypeError: (0 , _errorHandler2.default) is not a function } } 如何用async/await捕获rejected Promises ?

如何浏览,编译ES6和缩小NodeJS应用程序

我正试图同时处理browserify和ES6。 我有以下基本的节点文件: main.js var foo = require('./foo.js'); var x = foo.math(200); console.log(x); foo.js exports.math = (n)=>{ return n * 111; }; 现在我想要做以下事情: 把它转换成一个文件bundle.js这样我就可以把它作为脚本包含在我的网站中 使用babel编译JS,使所有浏览器都可以读取ES6 最小化bundle.js以提高浏览器的加载时间 我有browserify安装在全球,我运行这个命令: browserify main.js > bundle.js 很好用。 但是我应该先运行babel吗? 我如何完成我的3个步骤的过程,并按照什么顺序(当然最后必须发生缩小)? 我应该这样做吗?

在本地使用babel-cli

有没有一种方法来使用巴贝尔客户端,而不是全球安装? 所以而不是这个 npm install -g babel-cli 我想这样做 npm install babel-cli –save-dev

从npm脚本运行babel-cli不起作用

我按照这里的指示来安装babel-cli 。 我在我想运行它的目录中添加了"build": "babel src -d lib"到我的package.json中。但是,在运行时,我得到这个错误: 🐕 npm run build > ipfs-readme-standard@1.0.0 build /Users/richard/src/ipfs-readme-standard > babel src -d lib src doesn't exist npm ERR! Darwin 14.5.0 npm ERR! argv "/Users/richard/.nvm/versions/node/v5.0.0/bin/node" "/Users/richard/.nvm/versions/node/v5.0.0/bin/npm" "run" "build" npm ERR! node v5.0.0 npm ERR! npm v3.5.2 npm ERR! code ELIFECYCLE npm ERR! ipfs-readme-standard@1.0.0 build: `babel src -d lib` npm […]

NodeJS 5.x + Babel 6asynchronous/等待debugging

当我尝试使用transform-async-to-generator babel插件(尽pipe我已经尝试几乎所有其他组合)尝试使用async / awaitdebugging代码时,我遇到了一些棘手的debugging体验。 基本上,一个await的代码会跳到方法的末尾,然后进入编译的代码。 video export class Cat { async meow(){ let p = await this.bat(); // <<<< this line runs this.fart(); // <<<< then skips this line return p; // <<<< and goes to this line ( always last line in fn ) } } 如果您查看该函数的生成代码: meow() { var _this = this; return […]

Babel编译错误:找不到模块core-js / library / fn / get-iterator

这是我的目录结构: ├───demo │ ├───entry │ │ ├───index.js │ │ ├───tap.js │ │ └───util.js │ ├───node_modules │ ├───index.html │ ├───package.json │ └───webpack.config.js ├───src │ ├───tap.js │ └───util.js ├───index.js └───package.json 在demo/entry/index.js我有 import tap from '../../src/tap'; 编译时,babel会报错 ERROR in ../src/tap.js Module build failed: Error: Cannot find module 'core-js/library/fn/get-iterator' 但是,如果我这样导入它的工作 import tap from './tap'; 文件./tap.js和../../src/tap是相同的。 问题是node_modules ? 因为在demo目录中,babel和其他任何东西都在node_modules ,所以我可以import任何我喜欢的文件。 […]

无法在WebStorm中列出Grunt任务错误

我在Windows 7上使用的JetBrains WebStorm 11.0.4。我有一个Gruntfile.js文件的项目,当我试图让WebStorm“重新加载任务”,WebStorm失败: “Grunt”窗格中的“ 无法列出任务 ”。 错误的细节是: Registering "C:\Program Files (x86)\JetBrains\WebStorm 11.0.4\plugins\JavaScriptLanguage\grunt_js\tasks" tasks. Loading "grunt-tasks-fetcher.js" tasks…ERROR >> Error: Couldn't find preset "es2015" relative to directory "C:\\Program Files (x86)\\JetBrains\\WebStorm 11.0.4\\plugins\\JavaScriptLanguage\\grunt_js\\tasks" >> at <my_project>\node_modules\babel-core\lib\transformation\file\options\option-manager.js:395:17 >> at Array.map (native) >> at OptionManager.resolvePresets (<my_project>\node_modules\babel-core\lib\transformation\file\options\option-manager.js:387:20) >> at OptionManager.mergePresets (<my_project>\node_modules\babel-core\lib\transformation\file\options\option-manager.js:370:10) >> at OptionManager.mergeOptions (<my_project>\node_modules\babel-core\lib\transformation\file\options\option-manager.js:330:14) >> at OptionManager.init (<my_project>\node_modules\babel-core\lib\transformation\file\options\option-manager.js:488:10) >> at […]