Vue&React条件渲染

2020-05-12  本文已影响0人  睦月MTK

声明:


条件渲染的方式

条件渲染也有两种方式:


Vue

Vue选择的是使用特殊的指令比如v-ifv-showv-else等等来控制对应的标签是否进行输出。例:

<template v-if="ok">
  <h1>Title</h1>
  <p>Paragraph 1</p>
  <p>Paragraph 2</p>
</template>

当ok为真值(truthy)时,这些标签才会被渲染。Vue由于现在也支持JSX,所以其实也可以使用JSX式的条件渲染,但是不得不说,模板语法才是Vue的核心,没办法


React

React由于使用JSX,所以它的条件渲染变得极为简单,如:

render() {
    const isLoggedIn = this.state.isLoggedIn;
    let button;
    if (isLoggedIn) {      
        button = <LogoutButton onClick={this.handleLogoutClick} />;    
    } else {      
        button = <LoginButton onClick={this.handleLoginClick} />;    
    }
    return (
      <div>
        <Greeting isLoggedIn={isLoggedIn} />        
        {button}      
      </div>
    );
}

如果isLoggedIn那么button就是<LogoutButton onClick={this.handleLogoutClick} />,否则就是<LoginButton onClick={this.handleLoginClick} />


参考文档:

上一篇 下一篇

猜你喜欢

热点阅读