问题标签 [create-react-app]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
reactjs - 有没有办法让“react-scripts”在构建的根目录中包含额外的文件?
我的情况:
我正在托管create-react-app
在 Surge 上创建的应用程序。为了让 Surgereact-router
处理路由,我必须将 200.html 添加到根目录,为了处理 404,我必须将 404.html 添加到根目录。问题是,npm run build
只有index.html
, 和favicon.ico
被添加到构建目录的根目录中。
可能的解决方案:
build
我可以通过在 package.json 中制作脚本来复制其他文件react-scripts build && cp 200.html 404.html build
。
问题:
有没有更好的方法react-scripts
将额外文件添加到构建的根目录,而不是依赖于 package.json 中的 bash 脚本?
reactjs - 反应按钮 onClick 不会触发
我使用命令来创建我的项目,按钮没有触发create-react-app
对我来说真的很奇怪。onClick
我看到了这个我以前从未见过的错误
invariant.js:38 Uncaught Invariant Violation: addComponentAsRefTo(...): Only a ReactOwner can have refs. You might be adding a ref to a component that was not created inside a component's "render" method, or you have multiple copies of React loaded
不确定此错误是否导致按钮单击未触发。代码非常简单,在其他项目中运行良好。
reactjs - Webpack 错误:找不到模块:错误:无法解析“文件”或“目录”
我正在使用 create-react-app 来自学 React。但是,我遇到了一个对我没有任何意义的错误。
错误是:
Error: Child compilation failed:
Module not found: Error: Cannot resolve 'file' or 'directory' ./src/name-icon. png in C:\Users\Jacob\college-canoe:
Error: Cannot resolve 'file' or 'directory' ./src/name-icon.png in C:\Users\Ja cob\college-canoe
我看到了 WebPack“认为”的问题是什么,但我的代码实际上并没有在任何地方调用 name-icon。它曾经是,但我将名称更改为nameIcon。实际使用该图像的唯一代码片段是:
当我使用 nameIcon 注释掉代码时,问题甚至仍然存在。我在这里完全迷失了,任何帮助都会很棒。
编辑:添加到 webpack.config.js
编辑 2:添加了项目结构。
编辑 3:仍然不知道问题是什么,但是将 nameIcon 重命名为 name-icon 并将其放回 /src/ 并在我的 /photos/ 文件夹中有第二个副本以某种方式修复了它。稍后我将不得不回到这个问题。
javascript - 使用 create-react-app 创建库
我正在尝试创建一个 React-Redux 库,并且我正在尝试使用create-react-app来获取样板代码,但它在构建脚本中包含了一些不相关的内容,例如 appHtml。
有没有办法将弹出的 create-react-app 转换为库 - 特别是我不需要将所有js 文件打包成一个,而是只需通过 babel 传递它们并为每个 React 组件生成单独的文件?
javascript - 使用弹出的 create-react-app 创建 SVG Sprite 组件
我正在使用该create-react-app
库,并且创建了一个在开发中运行良好的 SVG 组件。我的问题是,在构建要发布的应用程序时,构建过程无法识别我的组件的动态路径,因此不会将主 sprite 文件放入我的/media
文件夹中。
SVG 组件示例:
如您所见,我在特定精灵文件中引用特定符号。
reactjs - 在一个简单的反应应用程序中读取环境变量
我用模块创建了一个应用程序create-react-app
,在一个组件中,我试图读取一个环境。var,像这样
我用它启动应用程序,AWS_ENV=live npm start
它从不读取这个变量。结果总是development
。我注意到,如果我用 构建应用程序npm run build
,输出将为production
,但无论如何我无法读取 AWS_ENV var
reactjs - 在非交互模式下运行 CRA Jest
更新:我的用例主要是在 CI 上运行测试,但覆盖默认的 CRA Jest 参数是我通常想知道的。
我正在使用Create React App附带的Jest配置运行测试。它总是启动到交互模式:
但我不希望它等待我的输入。我希望它运行一次然后终止。我尝试使用--bail
or--no-watchman
开关,但它仍然以交互模式启动。
如果我全局安装jest
并在我的项目的根目录中运行它,它会执行一次并完成(就像我想要的那样)。但是当我运行npm test
which runsreact-scripts test
时,即使我没有通过,它也会进入手表模式--watch
。
更新:我还在CRA上提交了一个问题。
javascript - React 路由在 facebook 的 create-react-app 构建中不起作用
我正在使用反应路由器来定义路由。我正在使用create-react-app进行开发。我的问题是,如果我在地址栏中键入子页面的 url 并尝试访问它在开发版本中有效,但在生产版本中无效。
我正在使用一个简单的快速服务器来托管生产构建
reactjs - create-react-app npm 运行构建命令
我用create-react-app构建了一个小型 React 应用程序,它在运行后从本地服务器运行良好npm start
。到目前为止还可以。
但是,当我运行时npm run build
,该过程似乎可以正确执行(创建构建文件夹,其中包含捆绑的 js 文件和 index.html 文件),但是当我在浏览器中打开 index.html 时,它什么也没有呈现。我错过了什么?
另外:我还尝试将其上传到远程服务器,当我访问 URL 时,浏览器返回...
禁止:您无权访问此服务器上的 /。
...如果有人知道如何解决这个问题,我也会很感激。