动态组件:React vs Vue

ybzsozfc  于 7个月前  发布在  Vue.js
关注(0)|答案(1)|浏览(96)

在React中,我们可以通过这种方式添加动态组件(我从react docs https://reactjs.org/docs/jsx-in-depth.html中抓取):

import React from 'react';
import { PhotoStory, VideoStory } from './stories';

const components = {
  photo: PhotoStory,
  video: VideoStory
};

function Story(props) {
  const SpecificStory = components[props.storyType];
  return <SpecificStory story={props.story} />;
}

字符串
它只是一个函数,返回一个模板与正确的组件(取决于 prop )
在Vue中,我们可以使用相同的逻辑:

<template>    
  <component :is="currentComponent"></component>
</template>


currentComponent 将是一个计算属性(通常)或只是数据中的一个属性
我的问题是:什么选择是更便宜的性能和渲染?

6jygbczu

6jygbczu1#

如果你想动态加载组件,那么你应该选择computed property,因为property值是动态的,应该是on state,我猜你是在使用vuex来检索数据,使用. mapGetters on computed property。
使用数据属性主要用于固定值或声明

相关问题