小编haz*_*ous的帖子

如何像forEach一样遍历不可变列表?

我想循环通过Immutable List,我曾经List.map这样做,它可以工作,但不好.有更好的方法吗?因为我只检查数组中的每个元素,如果元素符合我的规则,我会做一些事情,就像Array.forEach,我不想返回任何类似的东西Array.map.

例如,现在是我的工作:

let currentTheme = '';
let selectLayout = 'Layout1';
let layouts = List([{
  name: 'Layout1',
  currentTheme: 'theme1'
},{
  name: 'Layout2',
  currentTheme: 'theme2'
}])


layouts.map((layout) => {
  if(layout.get('name') === selectLayout){
     currentTheme = layout.get('currentTheme');
  }
});
Run Code Online (Sandbox Code Playgroud)

arrays dictionary immutable.js

14
推荐指数
1
解决办法
2万
查看次数

用于从 CDN 导入的代码分割块的 Webpack 设置

我们正在开发一个 React 组件库。某些组件需要更新,而无需重新部署主机应用程序代码。这非常类似于 Google 地图库,其中客户端 API 是一个小型 shell 代码,它在运行时导入实际的地图代码,从而允许热更新而无需任何主机停机。所以我们计划将该库的输出分成两部分 -

  1. Shell 组件库,任何主机应用程序代码都将使用它来导入 shell 组件。例如

    import Notifications from 'our-shell-lib';
    render(){
        return <Notifications .../>;
    }
    
    Run Code Online (Sandbox Code Playgroud)
  2. 核心组件库,我们计划将其托管在我们的服务器上。我们将继续使用新的修复和功能来更新它。

在上面的示例中,Notifications 组件将从我们的服务器下载NotificationsCore 组件并在内部安装它。

我们已经能够导出单个 shell 组件,并且它使用此处描述的基于scriptjs 的技术在运行时正确下载相应的核心组件。

然而,当核心组件使用动态导入时,就会中断,从而导致代码分割。所有核心组件文件都可以在远程服务器上使用,但我们尚未成功地将它们打包为具有动态导入的核心组件可以以与服务器 URL 无关的方式从远程服务器加载其分割块。我们不想在核心包中硬编码公共路径。我们可以在运行时将服务器路径传递给核心组件,以帮助它找到动态导入,但目前还没有找到方法。

想法?

javascript reactjs webpack code-splitting webpack-2

6
推荐指数
1
解决办法
1725
查看次数

RX.Component类提供哪些功能而不是React.Component?

微软最近发布的ReactXP文档目前没有太多关于RX.Component该类的信息.

以下是文档中的示例:

class HelloWorld extends RX.Component<void, void> {
    render() {
        return <RX.Text>Hello World</RX.Text>;
    }
}
Run Code Online (Sandbox Code Playgroud)
  1. 什么是由提供的功能RX.ComponentReact.Component
  2. 它如何影响基Component类的生命周期?

这对我来说是一个重要的考虑因素,因为React组件的最佳实践通常会鼓励组合而不是继承,除非是非常基本的场景PureComponent.提供的功能是否可以RX.Component证明继承的合理性?

javascript reactjs reactxp

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