小编vin*_*yll的帖子

如何在原生 Node 中将 CJS 模块引入到 ES6 模块中?

我以这种方式在 Nodejs 中使用 ES6 模块node --experimental-modules index.mjs

索引.mjs

import express from 'express'
Run Code Online (Sandbox Code Playgroud)

但我还需要导入一些用 CommonJS 格式化的第三方模块:

import express from 'express'
Run Code Online (Sandbox Code Playgroud)

(这里采用了 JSDom,但它也适用于其他第三方,例如Airtable

问题

看来我不能将两者混合起来。是否有包装器可以强制将 CJS 模块导入 ES6 模块?

我的项目不使用(并且希望远离)Babel 和 Webpack。不过,如果绝对必要的话,我可以转译第三方库。

javascript commonjs node.js es6-modules

7
推荐指数
0
解决办法
483
查看次数

ReactJS - 孩子如何找到其父母?

在ReactJS中是否有办法让组件找出它的父母是谁?

编辑1:无论做到这一点的优点,有没有办法?

我没有找到一种React方法来实现这一点 - 从我所看到的,我的想法是将回调传递给来自父级的子进程,并且子进程调用回调 - 不知道回调实际是在家长.

我试过设置一个"所有者"属性,这个想法似乎有效,但我想知道什么是最好的方法?

例如

<Parent>
  <Child owner={this}/>
</Parent>
Run Code Online (Sandbox Code Playgroud)

然后在子组件中,我可以做owner.method,它似乎工作正常.我知道这不是真正的父/子关系,但是我在测试中发现的最接近.

有些人可能会说回调是一种更干净的方式,但是在某种情况下(例如RadioButtonGroup和RadioButton)的父/子关系看起来很自然,并且在我看来,会因为知道这种关系而受益.

编辑2:所以这不可能吗?

关于不支持它的想法,我不喜欢的是HTML可以用零javascript标记 - 它暗示了默认功能 - 一些元素需要父母 - 他们被定义为其他元素的子元素(例如ul和li).这在JSX中不可能发生,因为如果元素之间存在交互 - 必须有javascript事件将组件绑定在一起 - 每次使用它们.设计师不能简单地像语法一样编写HTML - 有人必须介入并在其中放置一些javascript绑定 - 这会使维护更加困难.我认为这个想法对于覆盖默认行为是有意义的,但是应该支持默认行为.默认情况下需要了解您的父母或您的所有者.

javascript facebook reactjs

5
推荐指数
1
解决办法
771
查看次数

标签 统计

javascript ×2

commonjs ×1

es6-modules ×1

facebook ×1

node.js ×1

reactjs ×1