当前位置: 首页 > 编程日记 > 正文

windows系统和linux系统可以使用相同的js代码吗_「React 手册 」在 Windows 下使用 React , 你需要注意这些问题...

大家好,本篇内容,我要和大家聊聊使用 Windows 开发 React ,你需要注意的一些问题。首先说明下,我不是使用 windows 进行开发,因为其配置开发环境来说不是特别方便,我更喜欢 苹果mac 或者乌班图这样的系统,但是使用windows 进行开发的人还是占多说的,关于这些问题还是很有必要来和大家聊聊,尤其是在我们的开发过程中,我们的项目小组开发人员,有的喜欢用 Windows ,有的喜欢用苹果mac,这就会产生一些问题。

终端(控制台)

使用 Windows 系统的同学们,你们也许经常会在系统的运行菜单里输入CMD 命令调出控制台终端,但是其存在一个问题,不支持 Unix 相关的命令,有时候就安装不了相关的依赖包。为了解决这个问题,就需要安装 Unix 终端。我强烈推荐大家使用 Git Bash 这个终端,该终端的下载地址是:https://git-scm.com;第二个选择是安装 Cygwin,是基于Linux 的终端,其安装地址是:https://www.cygwin.com。

环境变量

使用 Windows 的另一个常见问题是设置环境变量。 通常,我们在mac系统下编写 npm 命令脚本时,我们设置环境变量,例如 NODE_ENV = production 或 BABEL_ENV = development,但是要在Windows中设置这些变量,前面需要加上 SET,这意味着你需要执行 SET NODE_ENV = production 或 SET BABEL_ENV = development。

这样做的问题是,如果你与使用Linux 或 Mac的人一起开发工作时,那么他们将在SET命令上遇到问题,可能你需要忽略此文件并仅针对您的本地环境对其进行修改。 每次这样做这可能很乏味。 解决此问题的方法是使用一个名为cross-env的软件包。 你可以通过执行如下命令

 npm install cross-env 

进行安装,修改你的配置文件如下所示,修改后,你的项目在Windows,Mac和Linux 都是可以正常运行的:

333840363217804b171f7ecb33b9db7e.png

文件名、目录名区分大小写

实际上,这在Linux上也会发生,但是有时很难想到是这个问题,例如,如果你在 components/home/Home.jsx 这个路径下创建了一个组件,然后你使用如下方式进行引入组件(请注意第一个home的第一个字母我使用了大写):

import Home from './components/Home/Home';

通常,在Mac下开发的同学,不会遇到此类问题,但在Linux或Windows上可能会产生错误,因为系统文件路径区分大小写。

路径问题

在 Windows 下使用反斜杠()定义路径,而在Mac或Linux中,使用正斜杠(/)定义路径,比如我们在 Node.js 环境配置路径,如下段代码所示:

在 MAC 或 Linux 下的配置:

e49da3b7ec22f5a7aba5303b1db6a27e.png

在 Windows 下的配置:

b1fa341c99a5f3c65b133fb1b6f0d43b.png

为了解决使用不同系统进行开发的问题,避免我们每次进行修改,我们需要导入 path 模块,就能修复此问题:

0ef888297c0a60c90361b646258d49fe.png

小节

今天的分享就到这里,感谢大家阅读,如果你喜欢此文章,欢迎给个赞哦,谢谢了,下一篇文章,我将带着大家一起创建我们的第一个 React 项目,敬请期待...

《 React 手册》系列文章

「React 手册」在 React 项目中使用 ES6,你需要了解这些(一)

「React 手册」React 16 中值得你关注的新特性

相关文章:

以太坊:比特币 + 无限可能

链客,专为开发者而生,有问必答! 此文章来自区块链技术社区,未经允许拒绝转载。 还记你得刚学编程时,第一次使用“对象”的感觉吗?还记你第一次尝试函数式编程的样子吗?这些编程范式&#xff0…

thinkphp5内置标签

thinkphp5内置标签 知道内置标签怎么用,查手册的时候好查 却功能的时候在里面找着来用 内置标签一览 1 内置标签2 3 变量输出使用普通标签就足够了,但是要完成其他的控制、循环和判断功能,就需要借助模板引擎的标签库4 功能了,系统…

python可视化窗口制作一个摇骰子游戏_使用python制作一个抽奖小游戏——骰子游戏...

1.模拟真实环境掷骰子 从Python标准库中调用模块:random——random中包含以各种方式生成随机数的函数 从random中引用randint这一函数——骰子都是有固定面数 from random import randint **2. **创建Die类**** 骰子属性sides(面数)默认为6面…

C#拾遗(一、基本类型)

1. C#是一种块结构语言,用花括号{}分块,但是用#region和#endregion来定义可以展开和折叠的代码区域 #region 这是引用区 using System; ...... #endregion 2. C#简单类型都是小写,bool,string类型要区别于Java的写法;float、decim…

我不喜欢Go语言的十个理由

链客,专为开发者而生,有问必答! 此文章来自区块链技术社区,未经允许拒绝转载。 Go 语言有多火爆?国外如 Google、AWS、Cloudflare、CoreOS 等,国内如七牛、阿里、知乎等都已经开始大规模使用 Go 语言开发…

写扩展性好的代码:函数

http://blog.jobbole.com/107442/转载于:https://www.cnblogs.com/answercard/p/8862006.html

PHP学习笔记:万能随机字符串生成函数(已经封装好)

做验证码用到的,然后就把这个函数封装起来,使用时候要设置2个参数: $str设置里要被采集的字符串,比如: $strefasfgzsrhftjxjxjhsrth; 则在函数里面生成的字符串就回从efasfgzsrhftjxjxjhsrth里面随机抓取; …

python中getopt函数_python getopt模块详解

getopt这个函数 就是用来抽取 sys.argv 获得的用户输入来确定执行步骤。 getopt是个模块,而这个模块里面又有getopt 函数,所以getopt需要这样这样用。 getopt.getopt( [命令行参数列表], "短选项", [长选项列表] ) 该函数返回两个值. opts 和a…

Go语言的前景分析

链客,专为开发者而生,有问必答! 此文章来自区块链技术社区,未经允许拒绝转载。 抓住时代的趋势 在上篇文章中,也就是那个跨维度的打击,是可以直接秒杀的中,提到这个时代的问题,这次…

SQL获取当月天数的几种方法

SQL获取当月天数的几种方法 原文:SQL获取当月天数的几种方法 日期直接减去int类型的数字 等于 DATEADD(DAY,- 数字,日期) 下面三种方法: 1,日期加一个月减去当前天数,相当于这个月最后一天的日期。然后获取天数。(注意&#xff0c…

移动端zepot媒体查询media queries

使用zepot做轮播图<head> <meta charset"utf-8"> <meta name"viewport" content"widthdevice-width, user-scalableno, initial-scale1.0, maximum-scale1.0, minimum-scale1.0"> <title>jd首页</title> <link…

前端try catch是如何捕获异常的_一文告诉你如何优雅处理前端异常?

前端一直是距离用户最近的一层&#xff0c;随着产品的日益完善&#xff0c;我们会更加注重用户体验&#xff0c;而前端异常却如鲠在喉&#xff0c;甚是烦人。一、为什么要处理异常&#xff1f;异常是不可控的&#xff0c;会影响最终的呈现结果&#xff0c;但是我们有充分的理由…

区块链热度不断,那么究竟是泡沫还是未来?

链客&#xff0c;专为开发者而生&#xff0c;有问必答&#xff01; 此文章来自区块链技术社区&#xff0c;未经允许拒绝转载。 区块链究竟是泡沫还是未来&#xff0c;需要落脚到实际运用中去判断。区块链区别于传统服务器&#xff0c;其宗旨不是为现实世界带来某个特定的产品&…

集成 Kendo UI for Angular 2 控件

伴随着 Angular 2 的正式 release&#xff0c;Kendo UI for Angular 2 的第一批控件已经发布了&#xff0c;当前是 Beta 版本&#xff0c;免费使用。 官方站点&#xff1a;Kendo UI for Angular 2 Kendo UI for Angular 被打包成独立的多个 NPM package&#xff0c;在 Progres…

按钮垂直居中_带下拉按钮的动态图表

小伙伴们好啊&#xff0c;今天和大家一起分享一个图表制作的技巧&#xff0c;先来看看效果&#xff1a;这个图表里&#xff0c;其实有三个数据系列&#xff0c;分别是一深一浅两个颜色的条形图&#xff0c;再就是大大的圆圈儿&#xff0c;其实是用散点图模拟出来的。先来看数据…

第一周Access课总结

第一周Access课总结 1&#xff1a;这节课学到了什么&#xff1f; 这节课重点学了数据库是用来干什么 做什么的 老师怕我们理解不了 用了很长时间向我们举了很多的例子 让我们终于知道了数据库是用来干嘛的了 顾名思义 数据库就是存放数据的仓库 是长期存放在计算机内 有组织…

以太坊,EOS和其他DApps的总数达到2,432,但没有大规模采用

链客&#xff0c;专为开发者而生&#xff0c;有问必答&#xff01; 此文章来自区块链技术社区&#xff0c;未经允许拒绝转载。 根据分散应用监测网站StateOfTheDApps&#xff0c;每月创建的新DApps数量的最高水平是2018年12月。去年最后一个月共有179个新的DApps上线。 以太…

docker logstash_用于监视Kubernetes和Docker的六大开源工具

Kubernetes和Docker是在DevOps圈中最常听到的两个词。Docker是一个工具&#xff0c;它使你能够以容器化的方式运行应用程序&#xff0c;Kubernetes是一个用于编排、管理容器的平台——如果你想使用Docker CLI去手动地管理数千个容器&#xff0c;这是不切实际的。然而&#xff0…

大道至简第一章读后感

当今社会&#xff0c;信息化飞速发展&#xff0c;软件的需求也越来越高&#xff0c;而《大道至简》给我们点透了编程的精义。 大道至简第一是讲的便是编程的精义&#xff0c;文章借愚公移山这个故事来阐释编程的基本思路&#xff1a;出现一个问题&#xff08;惩山北之塞&#x…

nginx resolver 指令的使用

官方解释下就是&#xff1a;反向代理的场景&#xff0c;upstream后端用域名时&#xff0c;配置resolver以便于nginx能够解析该域名 Configures name servers used to resolve names of upstream servers into addresses 官网地址&#xff1a;http://nginx.org/en/docs/http/ngx…

以太坊和EOS DApp数量上升

链客&#xff0c;专为开发者而生&#xff0c;有问必答&#xff01; 此文章来自区块链技术社区&#xff0c;未经允许拒绝转载。 目前&#xff0c;在最受欢迎的智能合约平台以太坊和EOS上&#xff0c;每月大约有180个新的去中心化应用程序(DApps)&#xff0c;该数量处于历史最高…

转载iOS开发中常见的警告及错误

iOS警告收录及科学快速的消除方法 前言&#xff1a;现在你维护的项目有多少警告&#xff1f;看着几百条警告觉得心里烦么&#xff1f;你真的觉得警告又不是错误可以完全不管么&#xff1f; 如果你也被这些问题困惑&#xff0c;可以和我一起进行下面的操作。其实大部分的警告都是…

数学思想 —— 低维与高维的统一

在平面几何有勾股定理&#xff1a;“假设三角形ABC的两边AB、AC互相垂直&#xff0c;则有关系&#xff1a; AB2AC2BC2当我们拓展到空间&#xff0c;类比平面几何的勾股定理并研究三棱锥的侧面面积与底面面积的关系时&#xff0c;我们可得到相应结论&#xff1a;假设三棱锥A-BCD…

python键_在Python中创建键命令

我正在根据我在网上找到的一个脚本编写我自己的简单键记录器。但是&#xff0c;我正在尝试编写一个键命令&#xff0c;以便在键入此命令时记录器程序将关闭。我该怎么做&#xff1f;&#xff08;我也知道它一点也不安全&#xff0c;但这与这个程序无关&#xff09; 例如&#x…

对标以太坊的EOS再火,也拼不过InterValue的区块链4.0

链客&#xff0c;专为开发者而生&#xff0c;有问必答&#xff01; 此文章来自区块链技术社区&#xff0c;未经允许拒绝转载。 2017年6月26日上线的数字货币EOS&#xff0c;仅用5天时间&#xff0c;就融了1.85亿美元&#xff0c;一举打破ICO的融资记录。 至2018年4月12日&a…

python中ttk和tkinter_Python tkinter与ttk日历

我正在使用 this代码在我的Tkinter上创建一个简单的日历.当我在主根窗口上放置日历时,日历显示正常.因此,我决定放置另一个按钮,它将创建一个Tkinter顶层窗口并在顶层窗口上放置另外一个日历.但这次它无法显示日历,而是它给了我这个错误,“TclError&#xff1a;无法打包. 18913…

Ubuntu dns

在Ubuntu系统网络设备启动的流程中&#xff0c;会依赖/etc/network/interface的配置文件初始化网络接口&#xff0c;所以直接在/etc/network/interface之中配置好对应的dns服务器会最先写入/etc/resolv.conf。所以我们可以在其中添加如下内容&#xff1a; dns-nameserve…

web图片识别

<!doctype html><html lang"en"><head> <meta charset"UTF-8"> <title>图像识别</title> <script src"../js/jquery.js"></script></head><body><canvas id"canv…

通俗易懂,到底什么是区块链?

链客&#xff0c;专为开发者而生&#xff0c;有问必答&#xff01; 此文章来自区块链技术社区&#xff0c;未经允许拒绝转载。 2017年9月4日&#xff0c;中国政府正式明令禁止ICO和数字货币交易行为&#xff0c;随即关闭了多个数字货币交易所。同时政府也多次声明&#xff0…

select三级联动 怎么删除前一个的_python测试开发django57.xadmin选项二级联动

前言当我们选择项目分类的时候&#xff0c;一个项目下关联多个模块&#xff0c;同时有这两个选项框的时候&#xff0c;需要实现选中一个项目&#xff0c;模块里面自动删除出该项目下的模块&#xff0c;如下图这种解决基本思路&#xff1a;1.写个jqeury脚本监听change事件2.ajax…