小编ali*_*ari的帖子

Webpack:使用目录中的每个文件创建一个包

我试图捆绑webpack中的每个角度模块.我的目标是有一个app.js将由webpack与这个配置捆绑在一起:

entry: {
        app: "./app/app.js"
},
output: {
        path: "./build/ClientBin",
        filename: "bundle.js"
},
Run Code Online (Sandbox Code Playgroud)

我将此捆绑脚本放在我的index.html中,这样它就是我应用的入口点.我在./app/components文件夹中有很多模块.文件夹结构如下:

app
|--components
|  |
|  |--home
|  |  |
|  |  |--home.html
|  |  |--home.js
|--app.js
|--AppController.js
Run Code Online (Sandbox Code Playgroud)

我已经要求home.htmlhome.js加载home.js所有需要的文件时加载.问题是我有几个组件home,我想告诉webpack分别捆绑每个组件,并用它包含的文件夹命名home.

如何配置webpack来创建这些包并将它们放入./build/components

javascript angularjs webpack

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

如何以Mobx可观察状态测试反应组件

这是我组件的简化版本:

import React from 'react';
import { observable, action } from 'mobx';
import { observer } from 'mobx-react';
import { fromPromise } from 'mobx-utils';

@observer
export class MyComponent extends React.Component {
  @action componentDidMount() {
    const { store, params } = this.props;
    this.warehouse = store.findById(params.id);
  }

  @observable warehouse = fromPromise(Promise.resolve());

  render() {
    return this.warehouse.case({
      fulfilled: (value) => (
        <div>
          fulfilled
        </div>
      ),
      rejected: (error) => (
        <div>
          rejected
        </div>
      ),
      pending: () => (
        <div>
          pending
        </div>
      )
    });
  }
} …
Run Code Online (Sandbox Code Playgroud)

reactjs jestjs enzyme mobx mobx-react

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

我们可以通过.net native编译asp.net 5应用程序吗?

.net生态系统中.net native的作用对我来说很困惑.我听说它只适用于通用的Windows应用程序,但也听说它是CoreFX的一部分.我认为可以选择编译为.net native可以有很多优点(包括性能).

是否有可能将我的asp.net应用程序(特别是asp.net 5)编译为.net native?

.net asp.net .net-native coreclr

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

如何在typescript中为无状态反应组件定义defaultProps?

我想defaultprops为我的纯功能组件定义,但我得到一个类型错误:

export interface PageProps extends React.HTMLProps<HTMLDivElement> {
    toolbarItem?: JSX.Element;
    title?: string;
}

const Page = (props: PageProps) => (
    <div className="row">
        <Paper className="col-xs-12 col-sm-offset-1 col-sm-10" zDepth={1}>
            <AppBar
                title={props.title}
                zDepth={0}
                style={{ backgroundColor: "white" }}
                showMenuIconButton={false}
                iconElementRight={props.toolbarItem}
            />
            {props.children}
        </Paper>
    </div>
);

Page.defaultProps = {
    toolbarItem: null,
};
Run Code Online (Sandbox Code Playgroud)

我知道我可以这样写:

(Page as any).defaultProps = {
    toolbarItem: null,
};
Run Code Online (Sandbox Code Playgroud)

有没有更好的添加方式defaultProps

typescript reactjs

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

TSLint - 禁用成员的字母顺序

如何禁用对象文字语法中成员的字母顺序?

例:

function receiveLogin(user) {
  return {
    type: LOGIN_SUCCESS,
    isFetching: false,
    isAuthenticated: true,
    id_token: user.id_token,
  };
}
Run Code Online (Sandbox Code Playgroud)

我希望将类型作为第一项.

typescript tslint

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

Kotlin 中哪些用例适合 Dispatchers.Default?

根据文档,线程池大小IODefault调度程序的行为如下:

  • Dispatchers.Default:默认情况下,该调度程序使用的最大并行级别等于 CPU 核心数,但至少为两个。
  • Dispatchers.IO:默认为64个线程或核心数的限制(以较大者为准)。

除非我遗漏了一条信息,否则执行大量 CPU 密集型工作Default会更高效(更快),因为上下文切换发生的频率会降低

但下面的代码实际上在 上运行得更快Dispatchers.IO

fun blockingWork() {
    val startTime = System.currentTimeMillis()
    while (true) {
        Random(System.currentTimeMillis()).nextDouble()
        if (System.currentTimeMillis() - startTime > 1000) {
            return
        }
    }
}

fun main() = runBlocking {
    val startTime = System.nanoTime()
    val jobs = (1..24).map { i ->
        launch(Dispatchers.IO) { // <-- Select dispatcher here
            println("Start #$i in ${Thread.currentThread().name}")
            blockingWork()
            println("Finish #$i in ${Thread.currentThread().name}")
        }
    }
    jobs.forEach { …
Run Code Online (Sandbox Code Playgroud)

multithreading threadpool kotlin kotlin-coroutines

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

材质 ui 抽屉中的渲染链接

我想将我的 react-router 链接添加到Drawer. 我试过这个:

<Drawer width={200} open={this.state.drawerOpen} docked={false} onRequestChange={this.toggleDrawer}>
   <Link to="/businesspartners">
      <MenuItem onTouchTap={this.toggleDrawer.bind(this, false)}
                rightIcon={<CommunicationBusiness />}
      >
         Business Partners
      </MenuItem>
   </Link>
</Drawer>
Run Code Online (Sandbox Code Playgroud)

我的问题是链接将呈现下划线(如下图所示)。

在此处输入图片说明

reactjs react-router material-ui

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

在 .NET 中处理事件时如何释放所有 COM 对象

我在 C# 中使用 COM Excel 应用程序类。我处理了WorkbookBeforeClose. 但现在我无法正确释放 COM 对象。

请注意,我设法在处理此事件之前正确释放 COM 对象,并且在注释该部分代码时,我的应用程序正常工作。

哪些 COM 对象未从内存中释放以及如何正确释放它?

编辑: 我所做的:

public void Init()
{
   ...
   application = new Excel.Application();
   application.WorkbookBeforeClose += new Excel.AppEvents_WorkbookBeforeCloseEventHandler(application_WorkbookBeforeClose);
}
...
void application_WorkbookBeforeClose(Excel.Workbook Wb, ref bool Cancel)
    {
        if (WorkbookBeforeClose != null)
        {
            ExcelCloseEventArgs args = new ExcelCloseEventArgs();
            WorkbookBeforeClose(this, args);
            Cancel = args.Cancel;
        }
        else
            Cancel = false;
    }
...
private void closeExcel()
    {
        try
        {
            if (workbook != null)
            {
                workbook.Close(false);
            }
        }
        catch (Exception e) …
Run Code Online (Sandbox Code Playgroud)

c# com excel memory-management

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

Kotlin-如何异步读取文件?

有没有kotlin惯用的方式来异步读取文件内容?我在文档中找不到任何内容。

kotlin kotlinx.coroutines

2
推荐指数
2
解决办法
962
查看次数

使用typescript作为主要客户端语言

我试图找到一种方法来使用javascript,我可以使用代码完成,重构等工具.我终于意识到它不是像visual studio或webstorm这样的工具的问题,但它与javascript语言有关(主要是因为它是一种动态语言).我发现打字稿是一种很好的静态替代品.但我发现有关它的好评和差评.

我想知道投资是否有益?我是说我可以用它作为我的主要客户端语言吗?将所有javascript代码迁移到打字稿并尝试使用其所有语言功能是一个好主意吗?

我需要一个公正的答案!

typescript

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

Caffeine:当 AsyncLoader 刷新失败时使用过时的值

我想将我的Caffeine缓存配置为在加载程序无法刷新缓存时返回过时的结果。以下 Kotlin 代码演示了这种情况:

    @Test
    fun `completeble future`() = runBlocking {
        val cache = Caffeine.newBuilder()
            .refreshAfterWrite(Duration.ofSeconds(1))
            .expireAfterWrite(Duration.ofSeconds(1))
            .buildAsync<String, String> { key: String, executor ->
                GlobalScope.future(executor.asCoroutineDispatcher()) {
                    throw Exception("== Error ==")
                }
            }

        cache.put("id", CompletableFuture.completedFuture("value"))

        delay(2000)

        assertEquals("value", cache.get("id").await())
    }
Run Code Online (Sandbox Code Playgroud)

我希望这个测试能够通过,但我收到以下错误:

WARNING: Exception thrown during asynchronous load
java.lang.Exception: == Error ==
    at fsra.manager.TranslationManagerImplTest$completeble future$1$cache$1$1.invokeSuspend(TranslationManagerImplTest.kt:93)
    at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
    at kotlinx.coroutines.DispatchedTask.run(Dispatched.kt:241)
    at java.base/java.util.concurrent.ForkJoinTask$RunnableExecuteAction.exec(ForkJoinTask.java:1426)
    at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
    at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
    at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
    at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
    at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:177)




java.lang.Exception: == Error ==

    at fsra.manager.TranslationManagerImplTest$completeble future$1$cache$1$1.invokeSuspend(TranslationManagerImplTest.kt:93)
    at |b|b|b(Coroutine boundary.|b(|b)
    at …
Run Code Online (Sandbox Code Playgroud)

java kotlin caffeine kotlin-coroutines caffeine-cache

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