如何在没有 npm install 的情况下从 github 运行 react 项目
Posted
技术标签:
【中文标题】如何在没有 npm install 的情况下从 github 运行 react 项目【英文标题】:How to run react project from github without npm install 【发布时间】:2020-12-19 07:56:38 【问题描述】:我是全新的反应,所以我想我会通过修补来自 github 的其他人的代码来学习,但问题是,每次我从 github 克隆一个 repo 到 vs 代码时,它只是带有裸代码而不是节点模块。这是否意味着我每次尝试从 github 运行 react 项目时都必须执行 npm install ?另外,假设我自己做了一个 react 项目并将其放在 github 上。我假设我也会在没有节点模块的情况下放置它。那么这是否意味着每个想要运行我的项目的人也必须这样做?有没有什么高效快捷的方式来运行项目?
【问题讨论】:
【参考方案1】:“我是全新的反应”
首先,你也可以在没有node environment
的情况下学习react(通过简单的例子更容易学习基础知识。你在react docs 下找到无穷无尽的codepens)。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>Hello React!</title>
<script src="https://unpkg.com/react@16/umd/react.development.js"></script>
<script src="https://unpkg.com/react-dom@16/umd/react-dom.development.js"></script>
<script src="https://unpkg.com/babel-standalone@6.26.0/babel.js"></script>
</head>
<body>
<div id="root"></div>
<script type="text/babel">
class App extends React.Component
render()
return <h1>Hello world!</h1>
ReactDOM.render(<App />, document.getElementById('root'))
</script>
</body>
</html>
.gitignore
在root
文件夹下添加.gitignore
文件并在node modules
中键入(Git 应忽略的未跟踪文件)。
** 这个想法可以防止你的 repo 存储/下载无休止的额外文件。
来自create-react-app repo 的示例:
Git - gitignore 文档:** https://git-scm.com/docs/gitignore 相关问题:Git - Ignore node_modules folder everywhere安装 package.json 依赖项
默认情况下,npm install 将安装列出的所有模块 package.json 中的依赖项。 https://docs.npmjs.com/cli/install
下载/克隆一个 repo 后,您应该运行 npm install
(即 package.json 所在的位置)来安装您的 package.json
依赖项(此命令将依赖项添加到您的 local node_modules 文件夹中)。
反应应用
react-app repo 的工作方式略有不同 - 它通过一个命令设置您的整个开发环境(包括 NPM 依赖项)。
clone react-app
相关 *** 问:
Starting React App from pulled github project
类似:nextjs
“创建 React 应用”网站/文档: https://create-react-app.dev/
学习曲线
我的建议:
遵循一些基本的node/npm
课程(Youtube/Google/Medium/Linkedin-learning/udemy/treehouse/Books 等)。无法通过 *** 回答真正涵盖您的 Q。
【讨论】:
我明白了。但是有什么方法可以从 github 运行 react 项目来看看它是什么样子的?这意味着我不会添加自己的任何更改 - 我只想看看项目的运行情况 Github 用于版本控制,您需要将文件托管在某处(本地/远程)并为此运行 node.js 服务器。无论如何clone
/-或-下载ZIP并在根文件夹下运行npm install
需要3-4分钟-或-尝试一些云工具,如gitpod.io(同样在云工具下你需要运行npm install
)。
【参考方案2】:
正确的方法是将没有节点模块的代码推送到 GitHub。所有具有相应版本号的包都保存在一个文件中(通常称为:package.json),该文件也被推送到 GitHub。当有人下载代码时,他可以使用包管理器(npm、yarn 或任何其他)和相应的命令(npm install、yarn install……)安装文件中定义的所有包。安装软件包后,您可以根据需要多次运行代码。您只需在将新软件包添加到代码(新版本)时更新软件包。该方法属于最佳实践。像 npm 这样的包管理器被用于许多不同的软件项目,而不仅仅是 React 项目。
您也可以将您的节点模块推送到 GitHub,但这会占用大量空间,下载/上传可能会很痛苦,不推荐。但这是可能的。
【讨论】:
【参考方案3】:是的,您需要运行npm install
(或yarn
(或其他一些备用节点包管理器)),以便获得运行应用程序所需的包。
另一种方法是只运行应用程序的构建版本(例如see here for Create React App)。
【讨论】:
您能否指定如何运行构建版本。您提供的链接中的内容让我有点困惑以上是关于如何在没有 npm install 的情况下从 github 运行 react 项目的主要内容,如果未能解决你的问题,请参考以下文章
如何在不使用 pip install 的情况下从 tar.gz 文件安装 Python 包
npm install -g 和npm install --save-dev的关系
npm install -g @vue/cli VUE CLI安装错误
应该打字吗?如果不是,如何在不破坏用户的情况下在 npm install 上触发类型安装?