代码之家  ›  专栏  ›  技术社区  ›  Gayan Hewa

Vue组件名称必须为小写?

  •  1
  • Gayan Hewa  · 技术社区  · 6 年前

    我正在尝试在视图文件中使用组件。以下操作不起作用 当我试图用 <CampaignCreate></CampaignCreate>

    const app = new Vue({
        el: '#rewards-app',
        components: {
           CampaignCreate,
        }
    });
    

    如果我把它改成:

    const app = new Vue({
        el: '#rewards-app',
        components: {
           'campaign-create': CampaignCreate,
        }
    });
    

    <campaign-create></campaign-create> 没有问题。我正在努力理解这背后的原因。我目前在vuejs2.x上

    1 回复  |  直到 6 年前
        1
  •  13
  •   raina77ow    6 年前

    简而言之,这是因为HTML不区分大小写。是的 a big discussion

    myProp="123" 被解析 myprop="123" 这导致了虚拟用户.js你在哪里 my-prop="123" 将JavaScript中声明的prop称为 myProp . 这经常会咬伤初学者。

    这一问题最终得以解决,决定继续走同一条道路。这里有一句很有说服力的话:

    本质上,这个问题的存在是因为js和html是不同的 技术和使用不同的命名系统。使用相同的 这两种技术的案例(烤羊肉串或骆驼肉)都将从 一个地方到另一个地方,但潜在的问题将继续存在,所以我 相信,我们能做的就是划清界限。和当前行,即。 上下文非常好。