怎么解决在使用react过程中,大量html写在js文件中?


使用jsx,开发组件时,发现大量html代码写在js中,非常丑陋而且不好维护。不知道有什么好的解决方案。

reactjs jsx JavaScript

capcomQ 10 years, 6 months ago

人家生下来就是这样的,你却非要把人家拆开。写 React 代码思维如果不能转过去会悲剧的。
React 有组件这么一说,你还要用以前的框架的思想去编程,是不对的。
JSX 是为了让你写的更爽。

看到有人说 react-template,你看看是不是符合你的需求。

小兰·魇魅 answered 10 years, 6 months ago

没必要, 以前的 js 嵌入 html 的方式影响JS代码的阅读,维护起来也会麻烦。JSX属于一种domain language, 用来动态生成dom, 写view层。本身不是html。所以你不必考虑这样的问题。

拙眼D傻娜 answered 10 years, 6 months ago

一个解决方案就是,不用JSX,手写 React.createElement 函数调用,过一阵子你就会觉得,还是写JSX好。

抽疯似的微笑 answered 10 years, 6 months ago

有『大量』的时候,是不是考虑拆分为更小的组件来维护哇

天衣無縫D亡靈 answered 10 years, 6 months ago

Facebook 注意到了有一群写 CoffeeScript 的人死活不要写奇奇怪怪的语法,
实际上也做了一些让步, 我在 Teambition 用的写法就是 CoffeeScript 版本, 可以参考下:
https://github.com/teambition/react-lite-dropdown/blob/gh-pages/src/dr...
http://facebook.github.io/react/blog/2015/01/27/react-v0.13.0-beta-1.h...
如果你觉得好看的话, 就来吧. 不好看的话估计事情就是这样, 没有太多改变的余地了.


好吧终于认出楼主了.. 补几句..
我试了一下用 Babel 去写, Sublime Text 用 Babel 的插件, 感觉还行.
如果能接纳原生 js 语法的话, 我想还是尝试适应 JSX 的写法更好.
Babel 用的是 ES6, 兼容 JSX, 跟 CoffeeScript 一样也是编译.

凤凰院伦太郎 answered 10 years, 6 months ago

Your Answer