Angular vs React : 比较最基本的东西
我是React和Angular的新手(Angular的新手),我想对两者进行比较(每次一点点)。我将会边走边更新,但这里是我的起点。这假设应用程序已经为React和Angular创建。
1 - 开始用React运行应用程序
Index.html是第一个出现的文件。它有一个div,可以用来放置我们需要显示的东西。
一个有路由的应用程序将看起来像这样(如果你想了解更多关于这部分的信息,请看路由的文章)。
const
ReactDOM.render(
在index.js文件中,我们导入我们要使用的组件,并根据路径决定我们要在路由变量中使用什么组件,这就是将在根元素的渲染中显示的内容。
2 - 开始用Angular运行应用程序
我们也有index.html文件,看起来像这样。注意,组件将等同于我们在React中的根元素。
这个(下图)是所在的组件。注意,我们在html代码中使用的名字就是我们在组件中为选择器提供的字符串。
但是,将被显示的HTML代码在哪里呢?它就是上面在templateUrl下给出的代码。检查一下那个,我们发现。
在Angular的情况下,路由是在app.module.ts中完成的。
3- 使用React的基本组件
在React中,你可以将你的组件创建为一个类,或者一个函数。今后,首选的方式是使用函数,所以这就是我在这里要做的。
在组件文件中,导入你需要使用的东西(在顶部)。
import
使用函数形式创建组件。
//with props as the argument if needed
...
//using the below to avoid the window scroll when on an element
...
有了组件需要的JavaScript代码,我们将有jsx代码,"类似html "的代码使用JavaScript代码的部分。
因此,有了React组件、样式、HTML和代码,我们在同一个文件中拥有一切,并导入我们需要使用的东西(其他组件、React的功能等)。
4- 使用Angular的基本组件
使用Angular,事情变得更有条理(在我看来),但我发现动画效果比React要奇怪一些。总之,一个基本的Angular组件应该是这样的。
有了angular,我们就不必再导入每一个我们必须使用的其他组件了。我们可以将组件添加到他们的模块中,我们可以从同一模块的其他组件中访问它们。
在组件的ts文件中,我们也会有任何我们需要在组件中使用的JavaScript(这里是typecript)函数、属性等。然后我们可以在html文件中访问它。
html代码的一个例子是这样的,{{}}允许它访问ts文件中的一个属性(或一个方法)。
<tbody>
如果我们直接访问一个方法(函数),我们会用()和函数名一起。
我们不仅可以显示ts代码中的东西。我们还可以使用ts文件中的一个变量来设置一个属性,就像这样。
<button
上面,disabled用的是[],而itIsDisabled是ts文件中的属性名。要直接使用一个硬编码的值,不要包括引号。
如果要绑定一个事件而不是一个属性,就像这样做(包括事件名称的()。
.....
目前就是这样,但期待着学习更多这方面的知识。我不确定我最喜欢哪一个。我在想Angular似乎更有条理,但也许React对小型组件来说更快。我们将拭目以待。我想学习到足够多的知识,看看我最喜欢哪一个,然后再去做 :-)
如果你有自己的偏好,我很想听听。