关于组件命名

来源:2-7 使用组件改造TodoList

村口胡大爷

2020-05-12

图片描述文档里面写了

当使用 PascalCase (首字母大写命名) 定义一个组件时,你在引用这个自定义元素时两种命名法都可以使用。也就是说 和 都是可接受的。注意,尽管如此,直接在 DOM (即非字符串的模板) 中使用时只有 kebab-case 是有效的。

意思是不是如果使用TodoItem定义组件,那么在调用的时候使用TodoItem 和Todo-Item 都行。

但是使用TodoItem调用不了,还是我理解错了?

写回答

3回答

Dell

2020-06-20

非字符串模版中,只有kebab-case 有效。

1
1
村口胡大爷
非常感谢!
2021-06-17
共1条回复

村口胡大爷

提问者

2020-06-17

<!DOCTYPE html>
<html lang="en">
<head>
   <meta charset="UTF-8">
   <title>ToDoList</title>
   <script src="vue.js"></script>
</head>
<body>
   <div id="app">
       <input type="text" v-model="inputValue">
       <button v-on:click="handleBtnClick">提交</button>
       <ul>
           <todoitem v-bind:content="item"
                      v-for="item in list">

           </todoitem>
       </ul>
   </div>

   <script>

       var TodoItem = {
           props:['content'],
           template:"<li>{{content}}<li>"
       }

       var app = new Vue({
           el:'#app',
           components:{TodoItem:TodoItem},
           data:{
               list:[],
               inputValue:''
           },
           methods:{
               handleBtnClick:function () {
                   this.list.push(this.inputValue)
                   this.inputValue = ''
               }
           }
       })
   </script>
</body>
</html>



局部组件的名字是TodoItem(首字母大写的形式),我在调用的时候用todo-item就没问题,但是用todoitem 就调用不了。

但是文档是不是写了用首字母大写命名的这种形式两种方式都可调用?

0
0

Dell

2020-05-17

你代码发上来我看一下

0
1
村口胡大爷
代码我传在回答里面了,麻烦老师看一下
2020-06-17
共1条回复

Vue2.5-2.6-3.0开发去哪儿网App 零基础入门到实战

课程紧跟Vue3版本迭代,企业主流版本Vue2+Vue3全掌握

10675 学习 · 8191 问题

查看课程