我有包含　###　的字符串,正在用数组值替换。现在,我想将它们与组件一起使用,创建了该组件并且它可以工作,但是我不知道如何在字符串中使用它。我不想手动包装它们,因为我不知道字符串的样子,它可以有多个　###　。如果它具有2个###　,则选项将具有2个子数组。　有什么更好的方法呢?　Vue.component('opt',　{　template:　`　　{{str　span>　`,　props:{options:　Array}})new　Vue({　el:　'#app',　data:　{　str:　"I　have　###　and　you　have　a　###.",　options:　[　['AAA',　'BBB',　'CCC'],　['XXX',　'YYY',　'ZZZ']　]　},　computed:{　replacedStr(){　let　newStr　=　this.str;　this.options.forEach(option=>{　newStr　=　newStr.replace('###',this.concatenateOptions(option));　})　return　newStr;　}　},　methods:　{　concatenateOptions(strArr)　{　let　separator　=　"";　let　strOptions　=　"";　strArr.forEach(word　=>　{　strOptions　+=　separator　+　word;　separator　return　strOptions;bold　{　font-weight:　bold}　　I　want　something　like　this,　but　using　components:　　{{replacedStr}}
My　Components:
非常感谢。　最佳答案　您需要向上移动食物链!您将竭尽全力绕过vue的优点。您的　data.string　是模板,而###是一个不太有意义的占位符,然后您必须自己完成工作。　您不能使用Vue的模板系统吗?您的concatenateOptions方法可以替换为Array.join()。