必威-必威-欢迎您

必威,必威官网企业自成立以来,以策略先行,经营致胜,管理为本的商,业推广理念,一步一个脚印发展成为同类企业中经营范围最广,在行业内颇具影响力的企业。

我们建议在 React 中使用 CommonJS,管理平台

2019-10-11 04:40 来源:未知

缘何做 JS 开荒很疯狂???

2016/06/08 · JavaScript · 2 评论 · 开发

本文由 伯乐在线 - 小谢 翻译,cotton 校稿。未经许可,防止转发!
塞尔维亚共和国语出处:sfioritto。迎接参加翻译组。

Web开辟时很有意思的~可是Javascript确是……令人生畏的。

Web开荒中任何任何对你来讲都以很轻松的,但是当您深深研讨Javascript的时候,就能有一种“群众皆醒你独醉”的感觉,好像你不领会别的人都知道的一部分关键的基础知识内容,並且那几个内容能够扶植您掌握有所知识。

事实是,的确如此,你遗漏了部分消除问题的严重性部分。

还要,前端开垦确实已经跻身了疯狂的事态了。

岂可是你。

拉过一把椅子,坐下来。是到起来写Javascript应用的光阴了。

率先步是搭建本地开荒条件并跑通它。那么是利用 Gulp?依旧Grunt?等等,好……好像还会有 NPM script!

WebPACK?照旧 Browserify? (羞涩的)Require.js?升级到 ES6?恐怕为你的品种拉长 Babel 援助?

BDD 如故健康的单元测量检验?应该采Nash么断言框架?从命令行运营测验鲜明很棒,所以 PhantomJS 也是科学的抉择?

Angular 还是 React?还是 Ember?再或者 Backbone?

你看了有的 React 文书档案,“Redux 是一种为 Javascript 应用提供的可预测状态的器皿。”酷毙了!你一定须要中间的三个。

缘何构建 Javascript 应用会那样疯狂?!?

让自家来报告您干吗那整个是如此疯狂。让大家从二个例证开头,前边会有可观的图形。

这是 React 的“Hello, world!”应用。

JavaScript

// main.js var React = require('react'); var ReactDOM = require('react-dom'); ReactDOM.render( <h1>Hello, world!</h1>, document.getElementById('example') );

1
2
3
4
5
6
7
8
// main.js
var React = require('react');
var ReactDOM = require('react-dom');
 
ReactDOM.render(
  <h1>Hello, world!</h1>,
  document.getElementById('example')
  );

Not quite done. 不仅仅这几个。

Shell

$ npm install --save react react-dom babelify babel-preset-react $ browserify -t [ babelify --presets [ react ] ] main.js -o bundle.js

1
2
$ npm install --save react react-dom babelify babel-preset-react
$ browserify -t [ babelify --presets [ react ] ] main.js -o bundle.js

实质上这里还缺了几个步骤,譬喻设置 browserify,以致在您做好之后还要让它运维在网页上,因为那实际不会直接爆发贰个能有哪些内容的网页。 ¯ (ツ)

在产生那么些之后,你最终还供给三个名称叫 bundle.js 的公文,那一个文件包蕴新的 React Hello World 应用程序,那一个顺序有 一九三六4 行代码。而你只须求安装 browserify、babelify 和 react-dom 就能够,它们会帮您生成数不尽行的您不理解的代码,想想呢。

据此基本上是像上面那样的:

JavaScript

Marc was almost ready to implement his "hello world" React app pic.twitter.com/ptdg4yteF1 — Thomas Fuchs (@thomasfuchs) March 12, 2016

1
2
3
Marc was almost ready to implement his "hello world" React app pic.twitter.com/ptdg4yteF1
— Thomas Fuchs (@thomasfuchs) March 12, 2016
 

好,下边就让大家用简易的 Javascipt 代码写贰个 Hello World 应用。

XHTML

<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8" /> <meta name="viewport" content="width=device-width" /> <title>Hello World</title> </head> <body> <div id="container"></div> <script> document.body.onload = function(){ var container = document.getElementById("container"); container.innerHTML = '<h1>"Hello, world!"</h1>'; } </script> </body> </html>

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width" />
    <title>Hello World</title>
  </head>
 
  <body>
    <div id="container"></div>
    <script>
     document.body.onload = function(){
       var container = document.getElementById("container");
       container.innerHTML = '<h1>"Hello, world!"</h1>';
     }
    </script>
  </body>
  </html>

那就成了。一共 18 行代码。你能够复制/粘贴到 index.html 文件中,双击把它加载到你的浏览器中。化解。

那时候您一定会说:“等等,React 能做的事体比你凑巧写的那一个小玩意儿更加多,况且你不容许用这种形式写一个Javascript 应用!”(大好些个动静下)你是对的,但你还索要走一小步技巧清楚为何一切都疯了。

上面是笔者承诺过的图纸。

图片 1

非常多您付出的Javascript web应用程序,会落在钟形曲线中部的某些地方。一定会在中游有些,就算您从四个完完全全的 React 商旅最初,那么从一同初你就过度设计了您的应用程序。

那正是为啥一切都变得疯狂。此中的大部工具你感到是您消除难题所必需具备的,不过你一贯尚未汇合这么的主题材料,并且事后你恒久也不会遭受

平等张图纸:

图片 2

因为在暗许情形下,每种人都过度设计他们的应用,他们却开采不到那点,使得 Javascript 的付出处境变得过分繁冗。

您应有何运转 Javascript 应用程序呢?是还是不是应当利用部分好像 React 或 Angular 的工具?是还是不是相应选择软件包管理器?假诺您不这么做,你应该做哪些?测量试验有必不可缺吗?是否应该用 Javascript 生成标识?全部这么些都是您应当能够问问自身的难点,在运维私下认可的宏大的手艺仓库在此之前。

当你运维二个 Javascript 应用程序时,关键是要在钟形曲线上挑二个点,这一个点刚刚位于你感觉这么些利用最后大概会达到的复杂程度的前方。

自个儿不会撒谎,验证这一体须求阅历。不过这里有多少个不利的点能够让您运维大许多的 Javascript 应用程序:jQuery 加上顾客端模板,以至用于连接和压缩产品文件一流轻易的创设筑工程具(假若你的后端架构还一贯不这么做的话)。

假定您了然什么样精确地创设 Javascript 应用程序,那么您就能够起来领悟怎么样、曾几何时以致为什么选择框架或 npm/requir/webPack 或 ES6,几时编写测量试验,何时理应费心令你的测验本地运转,几时运营在浏览器中,全部这个问题都会解决。

有意思味用你的 Javascript 开采文化互补这些空白?想要防止不堪重负的痛感?想要防止在那么些开拓进度中过分设计你的 Javascript 应用程序?那是本人上月将要专一商讨的剧情,所以,敬请期望,在一两周后会有更加多干货到来!

打赏扶持作者翻译越多好作品,多谢!

打赏译者

Hello,world!

,document.getElementById('example'));

要用 browserify 安装 React DOM 和创设你的包。

$npm install --save react react-dom babelify babel-preset-react$browserify -t[babelify --presets[react]]main.js -o bundle.js

要用 webpack 安装 React DOM 和创设你的包:

$npm install --save react react-dom babel-preset-react$webpack

注意:

假设您正在使用 ES二〇一五, 你就要采取babel-preset-es2016包.

注意:暗中同意意况下,React 将会在开荒格局,很缓慢,不提出用于生产。要在生养情势下使用 React,设置景况变量NODE_ENV为production(使用 envify 或者 webpack's DefinePlugin)。例如:

newwebpack.DefinePlugin({"process.env":{NODE_ENV:JSON.stringify("production")}});

永不 npm 的便捷初始

万一你未来还没图谋要利用npm,你可以下载那么些早就包蕴了预创设的 React 和 React DOM 拷贝的入门套件.

下载入门套件 15.3.1

在入门教程包的根目录,创设多个暗含如下代码的helloworld.html。

Hello React!ReactDOM.render(

【编者按】本文作者为 Sean Fioritto,首要演讲了 JavaScript 开辟为什么让人有一点点不可能动手的根本原因。小说系国内 ITOM 管理平台 OneAPM 编写翻译显示。

样式
React 推荐应用内联样式。大家能够应用 camelCase 语法来设置内联样式. React 会在内定元素数字后自行抬高 px 。以下实例演示了为 h1 因素添加myStyle 内联样式:

打赏支持本人翻译更加的多好小说,感激!

任选一种支付办法

图片 3 图片 4

3 赞 4 收藏 2 评论

// main.jsvarReact=require('react');varReactDOM=require('react-dom');ReactDOM.render(

互连网费用乐趣多多!Javascript 却……令人心惊胆战。

      <body>
        <div id="example"></div>
        <script type="text/babel">
          var myStyle = {
            fontSize: 100,
            color: '#FF0000'
          };
          ReactDOM.render(
            <h1 style = {myStyle}>柠檬先生</h1>,
            document.getElementById('example')
          );
        </script>
      </body>

关于笔者:小谢

图片 5

懒懒的程序员~ 个人主页 · 小编的作品 · 24 ·  

图片 6

JSFiddle

再看一下那张图:

图片 7

干什么说 JavaScript 开荒很疯狂

Javascript 开垦现状令人无措又吸引,因为全部人并从未意识到,在默许状态下,他们的使用已经背离了设计标准。

您该怎么领头搭建 Javascript 应用?你应该用 React 或 Angular 这样的工具吗?假诺不用该如何做?测量试验到底有没有不可缺少?还要用 Javascript 生成标记吗?在起初搭建默许的十分的大工夫仓库在此以前,那些都是你应有应对的难点。开始支付 Javascript 应用时,关键在于在钟形曲线上采撷贰个点,作为你的采用最后复杂程度的上限。

坦白说,要兑现那或多或少亟需经验。可是依旧有好多 Javascript 应用能够借鉴的重点点的:Jquery 加上客户端模板,还会有三个特别轻巧的协会工具,用来一连和削减生产文件(假如你的后台框架还不曾那项效用)。

假设您询问了怎么正确构造 Javascript 应用,你就能够日趋领悟什么、哪天以至为何要采纳框架、npm、require、webpack 或 es6,何时要写测验,哪天应该在本地质度量试,几时应该在浏览器测量检验,以至其余会冒出的标题和麻烦。

本文系 OneAPM 程序员编写翻译展现。OneAPM Browser Insight 是一个依照实际客商的 Web 前面一特质量监察和控制阳台,能够帮大家一定网站品质瓶颈,网址加快效果可视化;扶植浏览器、微信、App 浏览 HTML 和 HTML5 页面。想阅读越来越多技艺小说,请访问 OneAPM 官方本事博客。

正文转自 OneAPM 官方博客

最早的文章地址: http://www.planningforaliens.com/blog/2016/04/11/why-js-development-is-crazy/

  React 使用 JSX 来代替常规的 JavaScript。
  JSX 是多个看起来很像 XML 的 JavaScript 语法增加。
  大家没有要求一定使用 JSX,但它有以下优点:
  JSX 推行更加快,因为它在编写翻译为 JavaScript 代码后举办了优化。
  它是类别安全的,在编写翻译进程中就会开采错误。
  使用 JSX 编写模板特别简便易行高效。

React JSFiddle

真情正是,没错,你的确缺了几块拼图。

单身文件

React JSFiddle without JSX

并非唯有你以为抓狂。

拉把交椅坐下来。该写个 Javascript 应用了。

率先要搭建和平运动行业地境况。是用 Gulp,照旧 Grunt,都不佳……照旧用 NPM 脚本吧!

Webpack 依然 Browserify?(糟糕意思地)依然 Require.js?要提高到 ES6 吗?在预管理中参加 Babel 是否太过了?

行为使得开垦依旧如常的单元测验?应该选择哪类断言框架?假如能从命令行运维测验当然是好事,那何不尝试 PhantomJS?

Angular 还是 React?Ember 呢?Backbone 怎么样?

多少 React 文书档案写道:“Redux 是 JavaScript 应用可预感的意况容器。”太棒了!你一定供给来一个。

注释
注明须要写在花括号中,实比方下:
      ReactDOM.render(
        <div>
          <h1>柠檬先生</h1>
          {/*注释...*/}
        </div>,
        document.getElementById('example')
    );

TAG标签:
版权声明:本文由必威发布于必威-前端,转载请注明出处:我们建议在 React 中使用 CommonJS,管理平台