标签: babeljs

正确的方式导入lodash

我在下面有一个拉取请求反馈,只是想知道哪种方式是导入lodash的正确方法?

你最好从'lodash/has'进行导入..对于早期版本的lodash(v3),它本身非常重,我们应该只导入一个specidic模块/函数而不是导入整个lodash库.不确定较新的版本(v4).

import has from 'lodash/has';
Run Code Online (Sandbox Code Playgroud)

VS

import { has } from 'lodash';
Run Code Online (Sandbox Code Playgroud)

谢谢

javascript lodash babeljs

154
推荐指数
4
解决办法
12万
查看次数

什么"代码生成器已经优化了[某些文件]的样式,因为它超过了"100KB"的最大值?

我在我的项目中添加了一个新的npm包,并在我的一个模块中需要它.

现在我从webpack收到此消息,

build modulesNote: The code generator has deoptimised the styling of "D:/path/to/project/node_modules/ramda/dist/ramda.js" as it exceeds the max of "100KB".

这是什么意思?我需要采取一些行动吗?

webpack babeljs

153
推荐指数
5
解决办法
8万
查看次数

ES6/2015中的零安全财产访问(和条件分配)

是否有一个null-safe属性访问(空传播/存在)操作者在ES6(ES2015/JavaScript.next /和谐)等?.的CoffeeScript例如?或者是否计划用于ES7?

var aThing = getSomething()
...
aThing = possiblyNull?.thing
Run Code Online (Sandbox Code Playgroud)

这将大致如下:

if (possiblyNull != null) aThing = possiblyNull.thing
Run Code Online (Sandbox Code Playgroud)

理想情况下,解决方案不应该分配(甚至undefined)到aThing如果possiblyNullnull

javascript coffeescript ecmascript-6 babeljs

137
推荐指数
6
解决办法
7万
查看次数

如何安装babel-polyfill库?

我刚刚开始使用Babel将我的ES6 javascript代码编译成ES5.当我开始使用Promises时,看起来它不起作用.Babel网站表示支持通过polyfill承诺.

没有运气,我试图添加:

require("babel/polyfill");
Run Code Online (Sandbox Code Playgroud)

要么

import * as p from "babel/polyfill";
Run Code Online (Sandbox Code Playgroud)

有了这个我将在我的应用程序引导上得到以下错误:

找不到模块'babel/polyfill'

我搜索了模块,但似乎我在这里缺少一些基本的东西.我也尝试添加旧的和好的蓝鸟NPM,但看起来它不起作用.

如何使用Babel的polyfills?

javascript node.js polyfills babeljs babel-polyfill

134
推荐指数
6
解决办法
12万
查看次数

使用ES6语法和Babel扩展Javascript中的错误

我试图用ES6和Babel扩展Error.它没有成功.

class MyError extends Error {
  constructor(m) {
    super(m);
  }
}

var error = new Error("ll");
var myerror = new MyError("ll");
console.log(error.message) //shows up correctly
console.log(myerror.message) //shows empty string
Run Code Online (Sandbox Code Playgroud)

Error对象永远不会获得正确的消息集.

试试Babel REPL.

现在我已经在SO上看到了一些解决方案(例如这里),但它们看起来都非常非ES6-y.如何以漂亮的ES6方式做到这一点?(那是在Babel工作)

javascript transpiler ecmascript-6 babeljs

128
推荐指数
6
解决办法
5万
查看次数

如何将用ES6编写的模块发布到NPM?

当我考虑在ES6中重写它时,我正准备向NPM发布一个模块,以及面向未来的模型,并学习ES6.我使用Babel转换到ES5,然后运行测试.但我不确定如何继续:

  1. 我是否进行了转换,并将结果/输出文件夹发布到NPM?
  2. 我是否在Github仓库中包含结果文件夹?
  3. 或者我是否维护2个回购,一个使用ES6代码+ gulp脚本用于Github,另一个用于转换结果+ NPM测试?

简而言之:我需要采取哪些步骤将用ES6编写的模块发布到NPM,同时仍允许人们浏览/分叉原始代码?

javascript node.js npm ecmascript-6 babeljs

127
推荐指数
7
解决办法
3万
查看次数

babel-preset-react-app,正在导入“@babel/plugin-proposal-private-property-in-object”包,而不在其依赖项中声明它

我的问题是,我尝试创建一个新的 React 项目,在遇到很多漏洞问题后,我设法解决了其中一些问题,主要说明之一是添加这一行:

\n
"overrides": {\n    "@svgr/webpack": "$@svgr/webpack"\n  },\n
Run Code Online (Sandbox Code Playgroud)\n

到我的package.json文件中。

\n

完成此操作后,我必须删除我的node_modules 文件夹并重新使用npm install,现在我在输入 后收到Babelnpm start错误。

\n
"overrides": {\n    "@svgr/webpack": "$@svgr/webpack"\n  },\n
Run Code Online (Sandbox Code Playgroud)\n

我尝试在互联网上搜索解决方案,但我发现只有一个告诉我将此插件添加到我的 devDependency 中的解决方案不起作用,而且我还找到了一个解决方案告诉我键入CI= npm run build 哪个也不起作用。

\n

这是我在输入时遇到的情况npm list @babel/plugin-proposal-private-property-in-object

\n
One of your dependencies, babel-preset-react-app, is importing the\n"@babel/plugin-proposal-private-property-in-object" package without\ndeclaring it in its dependencies. This is currently working because\n"@babel/plugin-proposal-private-property-in-object" is already in your\nnode_modules folder for unrelated reasons, but it may break at …
Run Code Online (Sandbox Code Playgroud)

javascript ejs node.js reactjs babeljs

115
推荐指数
7
解决办法
17万
查看次数

Babel文件未经转换即被复制

我有这个代码:

"use strict";

import browserSync from "browser-sync";
import httpProxy from "http-proxy";

let proxy = httpProxy.createProxyServer({});
Run Code Online (Sandbox Code Playgroud)

我通过npm 安装babel-corebabel-cli全局安装.关键是当我尝试在终端上使用它编译时:

babel proxy.js --out-file proxified.js
Run Code Online (Sandbox Code Playgroud)

输出文件被复制而不是编译(我的意思是,它与源文件相同).

我在这里错过了什么?

javascript babeljs

106
推荐指数
2
解决办法
4万
查看次数

Webpack babel 6 ES6装饰器

我有一个用ES6编写的项目,webpack作为我的捆绑包.大多数转换工作正常,但当我尝试在任何地方包含装饰器时,我收到此错误:

Decorators are not supported yet in 6.x pending proposal update.
Run Code Online (Sandbox Code Playgroud)

我查看了babel问题跟踪器,并且无法在那里找到任何内容,所以我假设我使用它错了.我的webpack配置(相关位):

loaders: [
  {
    loader: 'babel',
    exclude: /node_modules/,
    include: path.join(__dirname, 'src'),
    test: /\.jsx?$/,
    query: {
      plugins: ['transform-runtime'],
      presets: ['es2015', 'stage-0', 'react']
    }
  }
]
Run Code Online (Sandbox Code Playgroud)

我没有任何其他问题,箭头功能,解构所有工作正常,这是唯一不起作用的东西.

我知道我可以一直降级到babel 5.8,我之前有它工作,但如果有任何方法可以在当前版本(v6.2.0)中使用它,那将有所帮助.

javascript decorator ecmascript-6 webpack babeljs

100
推荐指数
3
解决办法
4万
查看次数

"你可能需要一个合适的加载器来处理这个文件类型"与Webpack和Babel

我试图使用Webpack与Babel编译ES6资产,但我收到以下错误消息:

You may need an appropriate loader to handle this file type.
| import React from 'react';
| /*
| import { render } from 'react-dom'
Run Code Online (Sandbox Code Playgroud)

这是我的Webpack配置的样子:

var path = require('path');
var webpack = require('webpack');

module.exports = {
  entry: './index',
  output: {
    path: path.join(__dirname, 'dist'),
    filename: 'bundle.js',
    publicPath: '/dist/'
  },
  module: {
    loaders: [
      {
        test: /\.jsx?$/,
        loader: 'babel-loader',
        exclude: /node_modules/
      }
    ]
  }
}
Run Code Online (Sandbox Code Playgroud)

以下是使用Webpack的中间件步骤:

var webpack = require('webpack');
var webpackDevMiddleware = require('webpack-dev-middleware');
var config = require('./webpack.config');

var express …
Run Code Online (Sandbox Code Playgroud)

javascript webpack babeljs es6-module-loader

99
推荐指数
6
解决办法
19万
查看次数