草庐IT

ES导入导出

全部标签

javascript - 如果需要,如何创建一个可以导入单个组件的库 à la lodash

我使用导入/导出在es6中编写了一个库。我可以使用Rollup将这个库捆绑到一个可以在浏览器中使用的IIFE中。我也希望能够在其他项目中使用这个库。但是,我通常不想包含整个库,只包含其中的一部分。因为库是使用es6import/export编写的,所以我可以将未捆绑的index.js文件作为依赖项包含在另一个项目中,然后import{myFunc}from'my-lib'就可以了太棒了-只有在我的项目被捆绑时我才会得到myFunc。但是,我遇到了一个问题,因为这些文件没有经过babel处理,因此包含es6代码,例如箭头函数。我读过,如果您要发布一个库,则它不需要由最终用户进行转译。我如

javascript - Visual Studio 无法识别 ES6 模板字符串

我在让VisualStudioCode和VisualStudio2013识别模板字符串(ES6)的特殊语法时遇到问题:VisualStudio代码VisualStudio2013我错过了什么? 最佳答案 这现在应该可以工作了,VSCode1.14.0中的基本示例没有问题我怀疑他们参加反引号聚会有点晚了。然而,仍有许多Unresolved问题与bettersupportfortemplategrammars等问题有关。和languagesupportinES6templatestrings所以看起来要包含高级功能还有很多工作要做。

javascript - Jasmine:如何在 ES6 上监视导入的函数/构造函数?

我想知道如果我在babel中使用ES6导入/导出,我如何在Jasmine上监视/stub功能?importMobileDetectfrom'mobile-detect';it('shouldspyMobileDetect',()=>{MobileDetect=jasmine.createSpy('MobileDetect');});`第一个问题是我无法重写只读模块模块构建失败:SyntaxError:/Users/oleg/projects/rp/popup/lib/spec/popup.spec.js:"MobileDetect"isread-onlyit('shouldspyMob

javascript - 如何从 Webpack 的导出中排除 vendor 模块 peerDependencies?

问题在Webpack中导出bundle时,如何排除3rd-party模块的peerDependency?(不是第三方模块本身)背景我想在angular-material框架之上创建一个带有自定义组件的UIkit。使用Webpack,我可以将我的自定义组件和AngularMaterial捆绑在一起,形成uikit.js之类的东西,然后稍后移植到其他应用程序。但是,我不想将angular模块本身包含到此uikit.js中。问题似乎Webpack足够“聪明”,注意到angular模块是angular-material模块的依赖项,因此会同时导出angular模块和angular-materi

javascript - 使用 ES6、Webpack 和 Babel 导入 UMD 样式模块

我发现了一些与此相关的StackOverflow问题,但没有一个匹配或解决我的问题。我正在用ES6编写一个库,旨在用于浏览器和服务器。我找到了一些可以在服务器或浏览器上使用的HTTP请求库(popsicle,axios)。我已经在这两个地方成功地使用了这些库,但是在将它们导入我的源代码并使用输出的webpacked文件时遇到了一些问题。我导入axios库的ES6源文件是importaxiosfrom'axios';exportdefault{go:function(){returnaxios.get('http://www.google.com');}};我的webpack配置是var

javascript - 使用 block 导入/加载库

情况我正在尝试使用Webpack加载一个库。该库本身已使用Webpack拆分为多个block。项目A依赖于项目B。项目B是使用Webpack构建的,由多个block组成。项目A现在通过动态导入加载项目B。构建项目A时,我希望在项目A的输出文件夹中创建项目B的block。问题如何让项目B的block在项目的最终构建中作为block持久存在?示例我做了一个示例项目(https://github.com/Robinfr/chunky-webpack),它有两个级别的子包。sub-package-a和b都创建block,但在构建主包时它们都被篡改到一个main-bundle.js中。

javascript - 如何使用 webpack 将 ES6+ 代码编译成 ES6?

我想将我的代码编译为ES6而不是ES5。这是我的babelrc。{"presets":[["env",{"modules":false,"useBuiltIns":true,"targets":{"browsers":["Chrome>=60"]}}],["react"],["stage-2"]]}使用babel-cli,可以编译正确的ES6代码。例如但是当我在相同的babel配置中使用webpack、babel-loader时,我的ES6代码被编译为ES5。那么如何使用Webpack将ES6+代码编译为ES6+代码呢?webpack会把ES6+代码编译成ES5吗?

javascript - Browserify 将所需或导入的包转译为 es2015

我们有一个项目利用导入,并要求通过NPM包含各种第三方包。其中一些包是用es6编写的,我们需要将它们转换为es5/es2015以便在IE11等浏览器中工作,因为一些包使用=>函数的箭头语法.我们自己的代码使用箭头语法,但它正在通过browserify转换为更普遍支持的语法。问题是我们导入的包,例如camelcase-keys,不会被转译并包含在它们的原始格式中。这对于像Chrome和Edge这样的浏览器来说很好,但对于IE来说它会中断,因为不支持该语法。这是我们当前的package.json和gulpfile.js。如果您需要任何进一步的信息,请告诉我。包.json{"name":"a

javascript - 如何将 TS 模块导入或要求到 CommonJS 文件中?

无论出于何种原因,我的一些模块必须是js文件。我像这样导入ts模块到我的js文件中:resolver.js:import{Message}from'../../connectors/message';//console.log('Message:',Message);constresolver={Query:{sendMessage:(root,args,ctx)=>{console.log(args,ctx);returnMessage.send('1','message');}}};export{resolver};message.ts:constMessage={send(id,

javascript - 如何在 Polymer 中编写 ES6 中的监听器?

我基本上想用ES6风格编写以下代码。listeners:{'neon-animation-finish':'_onNeonAnimationFinish'},我曾尝试使用如下属性,但从未触发_onNeonAnimationFinish回调。classMyElement{getbehaviors(){return[Polymer.NeonAnimationRunnerBehavior];}beforeRegister(){this.is='my-element';this.properties={name:{type:String}};this.listeners={'neon-anim