Tag: ecmascript 6

ES6从对象中导出所有值

说我有一个模块( ./my-module.js )有一个对象,应该是它的返回值: let values = { a: 1, b: 2, c: 3 } // "export values" results in SyntaxError: Unexpected token 所以我可以导入他们,如: import {a} from './my-module' // a === 1 import * as myModule from './my-module' // myModule.a === 1 我发现的唯一方法是对输出进行硬编码: export let a = values.a export let b = values.b export let c […]

Reflect对象在JavaScript中做什么?

我刚才在JavaScript中看到了一个MDN上的空白存根,但是我不能在Google上find任何东西。 今天,我发现这个http://people.mozilla.org/~jorendorff/es6-draft.html#sec-reflect-object ,听起来和代理对象除了领域和加载器function不同。 基本上,我不知道我发现的这个页面是否只解释了如何实现reflection,或者如果我不明白它的措辞。 有人能向我解释一下Reflect的方法是什么吗? 例如,在我发现的页面上说,调用Reflect.apply ( target, thisArgument, argumentsList )将返callback用目标[[Call]]内部方法的结果,参数为thisArgument和args。 但是,不同于只调用target.apply(thisArgument, argumentsList)呢? 更新: 感谢@Blue,我在维基http://wiki.ecmascript.org/doku.php?id=harmony:reflect_api&s=reflect上find了这个页面,据我所知,reflection对象提供了所有的方法版本可以被代理困住的操作使转发更容易。 但是,这对我来说似乎有点不可思议,因为我不明白它是如何完全有必要的。 但它似乎做的比这更多一点,特别是那个double-lifting的标准,但是指向旧的代理规格/

正确使用const来定义JavaScript中的函数

我感兴趣的是,如果在JavaScript中使用const可以设置什么types的值有任何限制 – 特别是函数。 这有效吗? 授予它的工作,但是它被认为是不好的做法,因为任何原因? const doSomething = () => { … } 是否所有的function都应该在ES6中这样定义? 如果是这样的话,似乎并不是这样。 感谢您的任何意见!

如何使用React和Webpack设置Babel 6阶段0

我从文档的理解 我看到Babel 6现在有三个预置:es2015,反应和stage-x。 我读过,我可以像这样在.babelrc设置它们: { "presets": ["es2015", "react", "stage-0"] } 或者直接在package.JSON中如下所示: { …, "version": xxx, "babel": { "presets": ["es2015", "react", "stage-0"] }, …, } 我可以进一步使用webpack这样的babel-loader: loader: 'babel?presets[]=es2015' 我的问题 所以要编译一切很好,干净我添加babel-loader ,刚刚更新与Babel6一起工作,到这样的webpackconfiguration: module.exports = function(options) { var jsLoaders = ['babel?presets[]=es2015']; […] loaders: [ { test: /\.js$/, exclude: /node_modules/, loaders: jsLoaders }, { test: /\.jsx$/, exclude: /node_modules/, loaders: […]

为什么在使用babel-loader的时候Object.assign()需要一个polyfill?

我正在尝试在由webpack编译的Babel编译的ES6 Web应用程序中使用Object.assign() ,但是出现错误: Uncaught TypeError: Object.assign is not a function 我已经使用babel-loader将ES6转换为ES5,所以我所有的其他ES6代码都可以正常工作。 然而, Object.assign()只在我的代码库中import "babel-core/polyfill"之后才起作用。 我看到我也可以通过导入babel-runtime来解决这个问题,但是我想知道为什么 Object.assign()需要比babel-loader执行 – 不应该使用babel-loader预处理所有东西,包括Object.assign() ?

在node.js中导入意外的保留字

我试图运行node.js后端服务器。 在Node.js文件中导入时收到错误unexpected reserved word 。 文件core.module.js的行是: 'use strict'; import lodashMixins from './lodashMixins.js' … other imports and configurations … 我启动简单的命令: node core.module.js 这并不罕见,但通常会发生在其他库上。 我还没有看到Node.js的解决scheme。 我应该如何解决这个问题? 我正在使用Windows Server。 编辑:我已经发现,这是ES6,但我怎么能启动它? 它看起来像应用程序的后端,但我不知道我应该使用什么命令来启动它没有错误。

使用ES6类作为Angular 1.x指令

我正在做一个小项目,围绕着ES6带来的好东西,我试图设置一个类作为一个angular度指令,但我遇到了这个错误“TypeError:不能调用一个类作为一个函数“,但从例子中,我发现他们只是写作课,并注册作为一个指令的angular度。 这是我的指令。 class dateBlock { constructor () { this.template = '/app/dateblock/dateblock.html'; this.restrict = 'AE'; this.scope = {}; } }; export default dateBlock 和我的索引,我将其导入,然后声明它。 import calendarController from './calendar/calendar.js' import dateBlock from './dateblock/dateblock.js' function setup($stateProvider) { $stateProvider .state('base', { url: '', controller: calendarController, templateUrl: '/app/calendar/calendar.html' }); }; setup.$inject = ['$stateProvider'] var app = angular.module('calApp',['ngAnimate','ui.router','hmTouchEvents', 'templates']) .config(setup) .controller('calendarController', […]

Typescript中实现了哪些ES6function?

我正在寻找目前在打字稿中实施的Ecmascript 6function列表,但在网上找不到任何东西。 以下是我到目前为止的function列表: 箭头function。 Rest参数 默认参数值 类(是整个规范实施?) 模块(我认为有一些实现差异,虽然) 谢谢!

ECMAScript 6文档生成器

我正在寻找EcmaScript 6的文档生成器。我没有find一个。 JSDoc 3没有支持https://github.com/jsdoc3/jsdoc/issues/555 Docco没有发现 SmartComments没有发现,但不太可能,太小的项目 YuiDoc没有发现 NaturalDocs没有发现,但没有专注于JavaScript SphinxDoc没有find 那么真的没有ES 6的文档生成器了吗?

分配左侧的Javascript对象括号表示法({导航} =)

我以前没有看过这个语法,所以想知道这是什么意思。 左边的方括号出现语法错误:“unexpected token {” var { Navigation } = require('react-router'); 我不确定webpackconfiguration的哪个部分正在转换,或者语法的目的是什么。 这是和谐的事情吗? 有人可以启发我吗?