在src之外反应读取文件

时间:2017-08-03 17:07:58

标签: reactjs

据我所知,在反应中你不能在import文件夹之外src个文件。 但究竟是什么原因可以禁用它?

在我的项目中,反应web应用只是整个事情的一部分,不同的部分共享一些文件(配置,构建输出),所以文件夹结构看起来像这样

ProjectRoot/
    config
    build-output/
    Part1/
    Part2/
    WebApp/
        src/
...

当然,你可以复制文件或创建符号链接,但这是重复和不方便的。

2 个答案:

答案 0 :(得分:2)

这仅限于Create React App

此工具的存在是为了让新用户通过抽象工具尽快启动并运行react框架。在这个例子中限制你的工具部分是他们的 webpack配置,它被预设为只查找src目录中的javascript文件。

这解释了为什么?,但要回答你问题的另一半:

  

如何禁用它?

您是否需要{Reid App}中的eject,然后修改webpack config以允许其搜索src/以外的目录

答案 1 :(得分:0)

首先 - 这与反应无关。

如果您使用systemjs,require等模块加载器引用importing javascript模块(for now),那么答案是:

这取决于Web服务器所服务的目录。如果您已将Web服务器设置为仅提供WebApp/src文件夹 - 那么不,浏览器将无法访问外部文件以及模块加载器。如果您将提供所有ProjectRoot目录 - 那么是的,您可以。

如果使用某种捆绑包(webpackbrowserify)准备Web应用程序以进行部署 - 这取决于您将如何配置它们并指示在生成的捆绑包中包含所需的文件。