当前位置: 首页 > news >正文

北京网站托管的公司城市网站建设

北京网站托管的公司,城市网站建设,安卓app开发培训,网站做电话线用目录 暴露webpack配置package.json的变化修改webpack.config.js配置less修改域名、端口号浏览器兼容处理处理跨域 暴露webpack配置 react-scripts对脚手架中的打包命令进行封装#xff0c;如何暴露这些打包配置呢#xff1f;上篇写到在package.json中的scripts配置项中有eje… 目录 暴露webpack配置package.json的变化修改webpack.config.js配置less修改域名、端口号浏览器兼容处理处理跨域 暴露webpack配置 react-scripts对脚手架中的打包命令进行封装如何暴露这些打包配置呢上篇写到在package.json中的scripts配置项中有eject属性 scripts: {eject: react-scripts eject}, 执行下面命令 yarn run eject之后会有以下的提示表示react-scripts eject是不可逆的。 随后又会有其他提示 意思是当前的 Git 仓库中存在未跟踪的文件untracked files或未提交的更改uncommitted changes。初始化一个本地git仓库提交本地修改记录 git init git add . git commit -m Update随后再次执行yarn run eject命令最后会把配置文件暴露出来如下 package.json的变化 package.json中会安装很多依赖会把打包所需要的依赖都重新安装一遍。 其中babel-preset-react-app是对babel/preset-envES6转ES5语法包的重写目的是让语法包可以识别React语法实现代码转换。 create-react-app脚手架默认配置的是sass预编译语言项目用的是sass则无需处理如果是less则需要自己处理。 另外不在用react-scripts封装的插件去执行命令直接基于node去执行对应入口的文件eject命令没有了。如下 scripts: {start: node scripts/start.js,build: node scripts/build.js,test: node scripts/test.js},下面的配置类似于babel.config.js对babel-loader的额外配置 babel: {presets: [react-app]}修改webpack.config.js 配置less 当我们使用less时候需要进行以下修改: yarn add less less-loader8 # 新版本的 less-loader 兼容性不好修改域名、端口号 可以在 scripts/start.js 文件中修改 const DEFAULT_PORT parseInt(process.env.PORT, 10) || 3000; // 可修改端口号 const HOST process.env.HOST || 0.0.0.0; // 可修改 IP或域名 如果要基于环境变量修改则安装cross-env插件 yarn add cross-env -D// 修改前 scripts: {start: node scripts/start.js,... }, // 修改后 scripts: {start: cross-env PORT8080 node scripts/start.js,... }, 浏览器兼容处理 浏览器兼容需要在package.json中的browserslist设置如下 browserslist: {production: [0.2%,not dead,not op_mini all],development: [last 1 chrome version,last 1 firefox version,last 1 safari version]},但是只能解决两个问题 1.对postcss-loader生效控制CSS3前缀 2.对babel-loader生效控制ES6的转换 无法解决ES6内置API的兼容常见解决办法就是使用babel/polyfill对常见内置的API重写可以yarn add babel/polyfill然后在入口import babel/polyfill 但是React的脚手架默认带了react-app-polyfill(对babel/polyfill重写)只需要在入口文件引入 // 对 ES6 内置 API 的兼容性处理 import react-app-polyfill/ie9 import react-app-polyfill/ie11 import react-app-polyfill/stable在 create-react-app 脚手架中使用了 react-app-polyfill 来替代 babel/polyfill因为它提供了对 IE9、IE11 和最新稳定版本的兼容性并且可以显式地进行按需导入。其具体的作用如下 import react-app-polyfill/ie9为 IE9 及以下版本提供 JavaScript 环境的 polyfill。import react-app-polyfill/ie11为 IE11 提供必要的 polyfill。import react-app-polyfill/stable为现代浏览器提供 polyfill确保 JavaScript 新特性如 Promise、Object.assign 等可用。 为什么重写 babel/polyfill 为 react-app-polyfill 兼容性 react-app-polyfill已经专门为 React 项目优化能更好地适配 React 的工作方式尤其是在处理旧版浏览器时的表现。 按需加载react-app-polyfill 允许你只按需引入支持的浏览器版本而不像 babel/polyfill 一开始就会加载所有polyfill。 处理跨域 在src目录中新建setupProxy.js文件安装http-proxy-middleware它是专门实现跨域的webpack-dev-server的跨域原理也是基于它完成的 yarn add http-proxy-middleware比如以下案例 const { createProxyMiddleware } require(http-proxy-middleware) module.exports function (app){app.use(createProxyMiddleware(jian,{target:https://www.jiashu.com/asimov,changeOrign:true,ws:true,pathRewrite:{^/jian:}})) }
http://www.yingshimen.cn/news/72136/

相关文章:

  • 临沧网站建设c3sales设计感很强的中文网站
  • 龙岗网站建设哪家好如何制作微视频宣传片
  • 用asp做网站出现空白高端品牌男鞋有哪些
  • 巢湖网站设计十堰网站建设费用
  • 企业网站设计论文摘要怎么写wordpress addfilter
  • 哈尔滨建设网站建筑公司网站制作
  • flash美食网站论文企业手机端网站源码
  • 学校网站建设培训心得云服务器永久免费
  • 惠安 网站建设公司青岛网站建站公司
  • HTML5网站建设案例公司网站是用什么软件做
  • 这是我自己做的网站吗上海企业建站工具
  • 四川电脑网站建设安徽工程建设信息网实名制查询
  • 山东省住房和城乡建设厅网站电话商品网页设计图片
  • 2017网站建设方案wordpress 分类标题
  • 网络站点推广的方法免建网站
  • 加盟网网站建设策划书娄底网站建设工作室
  • 网站建设及使用方案哈尔滨最新消息
  • 手机单机游戏网站大全seo综合查询怎么关闭
  • 如何删除自己建的网站查网站跳出率
  • 下载网站模板的软件织梦制作wap网站
  • 东坝地区网站建设怎么制定网站
  • 德阳市建设管理一体化平台网站wordpress 能装windows
  • html5高端网站建设织梦模板下载企业网站建设方案模板
  • 国家建设部防化工程师网站官网ui和平面设计的区别
  • 知名seo网站优化公司建设网站是否等于开展网络营销
  • 做餐厅logo用什么软件网站更换网站服务器
  • 做网站不给钱wordpress推荐好友
  • 建筑网校有哪些站内seo内容优化包括
  • 温州做网站广告投放怎么做
  • 企业网站 价格门户网站开发公司平台