Javascript 如何以大写字母显示项目?
我试着在vue(一个待办事项列表)中创建一个简单的列表示例。在这里我试着添加大写的过滤器(换句话说,所有字母都是大写的)。但它显示了我的错误 这是我的密码 错误: 呈现函数出错:“TypeError:无法读取未定义的”的属性“大写”Javascript 如何以大写字母显示项目?,javascript,vue.js,vuejs2,vue-component,vue-router,Javascript,Vue.js,Vuejs2,Vue Component,Vue Router,我试着在vue(一个待办事项列表)中创建一个简单的列表示例。在这里我试着添加大写的过滤器(换句话说,所有字母都是大写的)。但它显示了我的错误 这是我的密码 错误: 呈现函数出错:“TypeError:无法读取未定义的”的属性“大写” **vue.js:572类型错误:无法读取未定义的属性“大写” 在script.js:29 在Array.map()处 Vue$3.5大写(script.js:28) 在Watcher.get(vue.js:2883) 在Watcher.evaluate(vue.
**vue.js:572类型错误:无法读取未定义的属性“大写”
在script.js:29
在Array.map()处
Vue$3.5大写(script.js:28)
在Watcher.get(vue.js:2883)
在Watcher.evaluate(vue.js:2990)
位于Proxy.computedGetter(vue.js:3265)
在Proxy.eval(在createFunction(vue.js:9818)上的eval):2:311
Vue$3.Vue.\u渲染(Vue.js:4123)
Vue$3.updateComponent(Vue.js:2542)
在Watcher.get(vue.js:2883)**
您在映射
中的函数应该引用项
(其参数),而不是此.item
,它不存在,因为函数不是作为方法调用的。您在映射
中的函数应该引用项
(其参数),而不是此.item
,它不存在,因为函数不是作为方法调用的。您所犯的错误:
不是javascript函数。它应该是upperCase()
toUpperCase()
- 您不必使用
,只需在回调函数中使用this.item
item
- 由于
是一个对象,因此不能执行item
方法。您必须执行toUpperCase()
(这就是您正在尝试执行的操作)item.name.toUpperCase()
将
大写
函数更改为:
upperCase: function () {
return this.items.map(function (item) {
return item.name.toUpperCase();
})
}
- 您正在从
函数返回值,但试图在upperCase
文件中显示index.html
。仅将其更改为item.name
项目
<li v-for="item in upperCase" > {{item}} <button @click="deleteTodo(item)">X</button> </li>
- {{item}} X
更新了plnkr:您所犯的错误:
不是javascript函数。它应该是upperCase()
toUpperCase()
- 您不必使用
,只需在回调函数中使用this.item
item
- 由于
是一个对象,因此不能执行item
方法。您必须执行toUpperCase()
(这就是您正在尝试执行的操作)item.name.toUpperCase()
将
大写
函数更改为:
upperCase: function () {
return this.items.map(function (item) {
return item.name.toUpperCase();
})
}
- 您正在从
函数返回值,但试图在upperCase
文件中显示index.html
。仅将其更改为item.name
项目
<li v-for="item in upperCase" > {{item}} <button @click="deleteTodo(item)">X</button> </li>
- {{item}} X
更新的plnkr:您可以一起跳过javascript,并使用CSS使文本大写
。大写{
文本转换:大写;
}
我是大写的
我是普通大小写
您可以一起跳过javascript,使用CSS使文本大写
。大写{
文本转换:大写;
}
我是大写的
我是普通案例
对于未来可能的读者,我是专门为此而设计的,其优点是可重用,而不是为每个需要大写的列表提供计算属性
Vue.js允许您定义可用于应用公共
文本格式
模板:
<li v-for="item in items" >
{{item.name | capitalize}}
<button @click="deleteTodo(item)">X</button>
</li>
对于未来可能的读者,我们专门为此设计了一个列表,其优点是可重用,而不是为每个需要大写的列表都有一个计算属性 Vue.js允许您定义可用于应用公共 文本格式 模板:
<li v-for="item in items" >
{{item.name | capitalize}}
<button @click="deleteTodo(item)">X</button>
</li>
它向我显示错误是一个无用的问题描述,除非你也告诉我们它向你显示了什么错误。很明显,您会收到一条错误消息,而这条消息就在您面前的屏幕上。为什么不在你的问题中,这样我们也能得到这些信息呢?好吧,等等。看到了吗update@naveen检查我的回答你可以使用一个而不是一个计算属性。它向我显示错误是一个无用的问题描述,除非你也告诉我们它向你显示了什么错误。很明显,您会收到一条错误消息,而这条消息就在您面前的屏幕上。为什么不在你的问题中,这样我们也能得到这些信息呢?好吧,等等。看到了吗update@naveen检查我的回答你可以使用一个而不是一个计算属性。您是否可以共享Plunks您是否可以共享Plunks什么是4点?您正在从大写函数返回值,但试图在index.html文件中显示item.name。将其更改为仅项。
大写
函数仅返回不带键的对象。在您的index.html
文件中,您正在访问item.name
,因此我必须将其更改为仅item
,以查看值如果要使用键作为item.name
进行访问,请使用fromupperCase
。4点是什么?您正在从大写函数返回值,但尝试在index.html文件中显示item.name。将其更改为仅项。大写
函数仅返回不带键的对象。在您的index.html
文件中,您正在访问item.name
,因此我必须将其更改为仅item
,以查看值如果您想以项的形式使用键访问,请使用大写的中的code>。name
。