我正在尝试使用Babel在节点上编写一些CLI程序.我见过问题 How do I use babel in a node CLI program?,那里有 loganfsmyth说:

Ideally you’d precompile before distributing your package.

好的,现在我正在使用:

"scripts": {
    "transpile": "babel cli.js --out-file cli.es5.js","prepublish": "npm run transpile",}

但是,当Babel添加’use strict’时,我遇到了问题;排在#!/usr/bin/env节点标题后面.例如,如果我有cli.js:

#!/usr/bin/env node

import pkg from './package'

console.log(pkg.version);

我会得到这个:

#!/usr/bin/env node'use strict';

var _package = require('./package');

… ……

这不起作用.当我尝试运行它时,我总是得到:

/usr/bin/env: node'use strict';: This file or directory does'nt exist

我怎样才能解决这个问题?

解决方法

来自@DanPrince的解决方案是完全可以接受的,但还有另一种选择

cli.js

保留此文件es5

#!/usr/bin/env node
require("./run.es5.js");

run.js

// Put the contents of your existing cli.js file here,// but this time *without* the shebang
// ...

将脚本更新为

"scripts": {
    "transpile": "babel run.js > run.es5.js",}

这里的想法是cli.js垫片不需要传送,所以你可以将你的shebang保存在该文件中.

cli.js将只加载run.es5.js,这是run.js的babel-transiled版本.

javascript – 如何使用Babel进行CLI程序?的更多相关文章

  1. android – bundling failed:错误:插件0提供了“default”的无效属性

    我正在尝试使用此命令在我的AVD上运行react本机应用程序:但得到以下错误:.babelrc:package.json:我正在使用Windows,node.jsv8.11.3&反应原生v0.55.4我已经尝试过在互联网上推荐的所有内容,但仍然没有运气.如果有人可以提供帮助,真的很感激.解决方法这是babel-preset-react-native中的错误设置版本:

  2. 详解Webpack+Babel+React开发环境的搭建的方法步骤

    本篇文章主要介绍了详解Webpack+Babel+React开发环境的搭建的方法步骤,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

  3. 详解webpack2+node+react+babel实现热加载(hmr)

    这篇文章主要介绍了详解webpack2+node+react+babel实现热加载(hmr) ,非常具有实用价值,需要的朋友可以参考下

  4. Babel自动生成Attribute文档实现详解

    这篇文章主要为大家介绍了Babel自动生成Attribute文档实现示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

  5. 让nodeJS支持ES6的词法----babel的安装和使用方法

    这篇文章主要介绍了让nodeJS支持ES6的词法----babel的安装和使用方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

  6. 通过babel操作AST精准插入配置代码全流程

    这篇文章主要为大家介绍了通过babel操作AST精准插入配置代码的全流程,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步

  7. react源码层深入刨析babel解析jsx实现

    同作为MVVM框架,React相比于Vue来讲,上手更需要JavaScript功底深厚一些,本系列将阅读React相关源码,从jsx -> VDom -> RDOM等一些列的过程,将会在本系列中一一讲解

  8. Node.js基础模块babel使用详解

    这篇文章主要介绍了Node.js基础模块babel使用详解,babel是由一系列的组件构成,所以我们在开发过程中,要从自行配置组件来开始使用babel的功能

  9. babel插件去除console示例详解

    这篇文章主要为大家介绍了babel插件去除console示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

  10. vscode中使用npm安装babel的方法

    bable是一个广泛使用的ES6转换器,可以将ES6代码转为ES5代码,本文给大家介绍VScode里面怎么使用bable,使用npm安装babel的方法,需要的朋友参考下吧

随机推荐

  1. js中‘!.’是什么意思

  2. Vue如何指定不编译的文件夹和favicon.ico

    这篇文章主要介绍了Vue如何指定不编译的文件夹和favicon.ico,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

  3. 基于JavaScript编写一个图片转PDF转换器

    本文为大家介绍了一个简单的 JavaScript 项目,可以将图片转换为 PDF 文件。你可以从本地选择任何一张图片,只需点击一下即可将其转换为 PDF 文件,感兴趣的可以动手尝试一下

  4. jquery点赞功能实现代码 点个赞吧!

    点赞功能很多地方都会出现,如何实现爱心点赞功能,这篇文章主要为大家详细介绍了jquery点赞功能实现代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

  5. AngularJs上传前预览图片的实例代码

    使用AngularJs进行开发,在项目中,经常会遇到上传图片后,需在一旁预览图片内容,怎么实现这样的功能呢?今天小编给大家分享AugularJs上传前预览图片的实现代码,需要的朋友参考下吧

  6. JavaScript面向对象编程入门教程

    这篇文章主要介绍了JavaScript面向对象编程的相关概念,例如类、对象、属性、方法等面向对象的术语,并以实例讲解各种术语的使用,非常好的一篇面向对象入门教程,其它语言也可以参考哦

  7. jQuery中的通配符选择器使用总结

    通配符在控制input标签时相当好用,这里简单进行了jQuery中的通配符选择器使用总结,需要的朋友可以参考下

  8. javascript 动态调整图片尺寸实现代码

    在自己的网站上更新文章时一个比较常见的问题是:文章插图太宽,使整个网页都变形了。如果对每个插图都先进行缩放再插入的话,太麻烦了。

  9. jquery ajaxfileupload异步上传插件

    这篇文章主要为大家详细介绍了jquery ajaxfileupload异步上传插件,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

  10. React学习之受控组件与数据共享实例分析

    这篇文章主要介绍了React学习之受控组件与数据共享,结合实例形式分析了React受控组件与组件间数据共享相关原理与使用技巧,需要的朋友可以参考下

返回
顶部