A. react必须搭建web服务器吗
没有数据交互可以不用web服务器
但如果要发布到公网可访问,需要至少有个服务器可以发布静态文件的
B. web前端react该和什么搭配,比较好
react和rex搭配是目前最热门的话题,react每个组件都有自己的state,但是这些state太散乱,在多人开发或者大型开发中,无法有效的管理每个state,rex就是为了解决state的管理而设计的框架,将所有的state都统一交给store去管理和维护,开发人员可以很好的追踪state的流向和改变,state和组件的分离,保持了组件内部的纯净。
//可以看实际项目中的react用法
https://github.com/hyy1115/react-rex-webpack
C. 如何使用react和webpack
webpack是一个前端资源模块化管理和打包工具,说白了就是方便我们管理自己的常用的一些代码,比如你开发中用到sass以及jade同时用到es6,开发时你不可能改动某个地方就挨个命令去转换在到浏览器去看效果,那样效率是非常低的。所以webpack帮我们省去了那些多余的步骤。
基本入门
入口文件配置(entry);
输出配置(output);
加载器配置(mole);
其他配置(resolve);
build存放编译后的文件,development存放react代码的文件夹,components存放react组件的文件夹,node_moles存放安装的依赖。
D. 如何做一个react的单页面webapp
手机不好使啊-_-||1函数声明functionreinitIframe(){variframe=document.getElementById("ifm1");//ifare=id为ifm1的节点try{//try{}catch{}有错误会通过catch语句抛出,无误执行try内部代码varbHeight=iframe.contentWindow.document.body.scrollHeight;vardHeight=iframe.contentWindow.document.documentElement.scrollHeight//手机不好用,但是怎么看bheight和dheight赋了相同值啊?这两句是赋值,等号右边表示iframe内部窗口高度varheight=Math.max(bHeight,dHeight);//比较两个变量大小,将大的赋值给heightiframe.height=height;//height赋值给iframe}catch(ex){}//前面提到的错误抛出}window.setInterval("reinitIframe()",200);上面那个方法每200毫秒刷新一次话说加分吧手机不易啊-_-||
E. react web端开发要用ui框架么
1.适合。
2.React最大的好处就是省去了细粒度操作的繁琐,又有大工程项目的可维护性。
所以你用React的前提是,你是做一个web app。
3.不过目前移动端网页的需求感觉很多都是展示类型的静态页面,所以这种用React显然是没啥必要。
所以如果是‘页面开发’,我觉得没必要。
F. 如何评价淘宝 FED 团队推出的 React-web
实话实说,挺牛的,这个我项目我乍一看没看懂, 都有react了,也有react native了, 怎么还需要做什么web啊, 是组件库吗, 也不是.
原来使用react native的组件做web, 炸裂, 这想法很牛逼, 比如react 和 react native还牛,
iOS 原生组件 变形 -> RN 组件 -> 变形过滤退化 - > 该项目 react native web 组件 回到web 整整在虚拟机的层面套了3层.
押宝在RN上比押宝react 前途好多了, react 这个web框架随时会废掉, 但RN不会,用web开发native这个思路不会废掉.
只是这个项目前途渺茫,而且需要大量工作. 但是如果以后可以把这东西移植到swift写web,是不是大放异彩了?
G. react中如何引用融云(web)
如果大家打算利用React.js创建一款应用程序,那么各位无需完成整套工具设置即可在自己的浏览器当中轻松便捷地搞定原型设计。是的,其实际操作过程与我们的表述同样简单。举例来说,如果大家决定利用可选JSX语法自行编写组件,其编写方式以及代码内容看起来几乎与HTML如出一辙。
作为开发第一步,我们首先需要制作一份简单的文档,其中同时包含React.js与JSX转换工具。以下列代码作为范例:
因此,当我们利用React.js创建一款应用程序时,必须要在Web应用开发中做出一项决策——各组件拥有怎样的数据,这些数据的主来源又是什么。一旦解决了这个问题,大家就能够轻松完成应用创建的其它工作。
在这种情况下,我们只需要考量三种数据类型:
网络数据
用户输入数据
预测数据
具体来参考以下示意图:
其中网络数据将由网络及线路组件所获取。其通常代表着大量数据,而且为了不影响应用的运行速度,大家需要在外部对其加以处理,而后再把结果交付至我们创建的应用。
组件通信机制
在这里,数据被设计为自上而下贯穿整个组件结构,但大家有时候也需要以自下而上的方式逆向交付数据以实现应用程序交互性。在这种情况下,我们就需要利用特定的技术手段实现这种“数据逆流”。下面来看几种实现此类目标的方式:
·大家可以选择使用回调属性的方式,这是最理想也最简单的解决方案,因为此时组件只需要同其直接上游对象进行数据共享。React.js能够自动对每个实例者组件方法绑定,因此维护工作不会占用我们大量精力。下面来看具体示例:
H. react制作的web app 可以用cookie吗
简聊是用 Cookie, 当然这是 Ajax 部分的工作, React 关系不大.
Session 应该只和生命周期有关, 登录状态不够用, 一般情况.
I. reactjs适合移动端的web页面开发吗
先说意见,当然适合。
关于上面说React库大的,我只说一句……React可以服务端渲染……
其实最大的一个问题还是,为啥用React?
我目前项目也是React的,虽然不是移动端,我所觉得React最大的好处就是省去了细粒度操作的繁琐,又有大工程项目的可维护性。所以你用React的前提是,你是做一个web app。
不过目前移动端网页的需求感觉很多都是展示类型的静态页面,所以这种用React显然是没啥必要。
所以如果是‘页面开发’,我觉得没必要。光说平台不说具体需求什么的,标准耍流氓嘛。
J. 如何利用React.js开发出强大Web应用
。以下列代码作为范例:
<script src="http://fb.me/react-0.13.0.js"></script> <script src="http://fb.me/JSXTransformer-0.13.0.js"></script> </head> <body> <script type="text/jsx"> /** @jsx React.DOM */ </script> </body> </html>
组件结构
React.js当中的应用程序必须通过已经在层级结构当中布置完成的组件加以构成。如果大家希望在开发工作当中轻松使用应用程序的每个组成部分,那么必须首先拿出时间弄清楚其在层级结构中的具体作用并以此为基础勾勒应用原型。这意味着,每个组件都负责解决一项特定任务。而在某些复杂组件当中,我们还需要将其拆分成数个简单组件,从而确保一次只解决一个问题。这也是我们充分发挥React.js强大能力的必要前提。
属性与状态
React.js当中的数据主要分为两种类型:
·属性:这类数据会在不同组件之间往来传递
·状态:这类数据会始终被保存在某组件当中
组件的属性(即往来于不同组件间的信息)不可修改与变更,但组件的状态却能够随时加以调整(即组件内部的信息)。这代表着React.js中的一切都具备与之对应的真实源。
因此,当我们利用React.js创建一款应用程序时,必须要在Web应用开发中做出一项决策——各组件拥有怎样的数据,这些数据的主来源又是什么。一旦解决了这个问题,大家就能够轻松完成应用创建的其它工作。
在这种情况下,我们只需要考量三种数据类型:
网络数据
用户输入数据
预测数据
具体来参考以下示意图:
其中网络数据将由网络及线路组件所获取。其通常代表着大量数据,而且为了不影响应用的运行速度,大家需要在外部对其加以处理,而后再把结果交付至我们创建的应用。
组件通信机制
在这里,数据被设计为自上而下贯穿整个组件结构,但大家有时候也需要以自下而上的方式逆向交付数据以实现应用程序交互性。在这种情况下,我们就需要利用特定的技术手段实现这种“数据逆流”。下面来看几种实现此类目标的方式:
·大家可以选择使用回调属性的方式,这是最理想也最简单的解决方案,因为此时组件只需要同其直接上游对象进行数据共享。React.js能够自动对每个实例者组件方法绑定,因此维护工作不会占用我们大量精力。下面来看具体示例:
return ; } }); var Child = React.createClass({ render: function() { return Click me; } });
·如果大家希望实现的是其它抵达通知机制,那么可以利用单一系统实现发布/订阅。这种方式非常灵活而且同样易于维护。只需使用PubSubJS这类库,大家就能够随意对某一组件的生命周期方法进行绑定与解绑。
相关代码示例如下:
var Parent = React.createClass({ handleMyEvent: function(e) {...}, componentWillMount: function() { window.addEventListener("my-event", this.handleMyEvent, false); }, componentWillUnmount: function() { window.removeEventListener("my-event", this.handleMyEvent, false); }, render: function() {...} }); var Grandchild = React.createClass({ handleClick: function(e) { var customEvent = new CustomEvent("my-event", { detail: { ... }, bubbles: true }); React.findDOMNode(this.refs.link).dispatchEvent(customEvent); }, render: function() { return Click me; } });
组件生命周期
组件永远拥有着与其API紧密关联的生命周期。在这种情况下,其生命周期包括启动、更新与卸载三种状态。而这些功能已经被内置在组件的定义当中。举例来说:
componentWillMount与componentWillUnmount 方法都被用于添加或者移除事件侦听机制。当然还有其它多种方法能够帮助我们实现对组件状态及属性的控制。
一旦我们建立起一套浏览器内运行环境,接下来就可以将UI方案拆分为多个简单组件。接下来的任务是弄清应用程序运行需要具备哪些数据,这些数据将处于何种位置且如何与应用进行共享。当这些问题得到解决,大家将能够获得可进行试用体验的已创建应用。
利用React.js,我们能够非常轻松地开发出强大且稳定的Web应用程序。这主要是因为大家需要使用的全部功能都能够由该框架自行提供,而且其在初始设计之时就充分考虑到创建高复杂性应用程序的种种需要。