问题标签 [vue-props]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 如何隐藏与当前值不匹配的元素并与prop进行比较
我在一页上有不同的词组,比如说名词动词和形容词。描述每个组的方式是使用它的“词性”。这个“词性”被打印在一个小盒子里。所以你在小盒子里有组的“词性”,名词,我想实现这一点,当我点击那个盒子时,我会隐藏动词和形容词。如果我要点击动词,我会隐藏名词和形容词,等等。现在,每个组的“词性”正在作为道具传递。
问题是我想将当前页面上存在的词性与单击的词性进行比较,但我无法区分它。
在我的模板中,我有:
这{ pos }
是来自我的道具
这给了我打印在页面上的所有词性(考虑到这是其他东西的子组件,并且这些词组打印的次数与组数一样多)。所以我认为添加一种方法来检测点击的词性会有所帮助。
当我点击当前项目时,我得到了当前的词性,正如你this.pos
在这个上下文中看到的,不再是页面上的词性列表,而是变成了当前点击的部分演讲。我的想法是以某种方式在pos
和之间进行比较this.pos
,但它们现在是相同的。
如何进行比较说:如果有不等于当前单击的词性,请采取一些措施(添加类或 wtv)来隐藏元素。
vue.js - 使用多个组件在 Vue Router 中传递 props
如果在特定路由上,我正在尝试将道具传递给路由器中的组件。
找到的所有教程仅使用一个组件,因此可以简单地将道具附加到列表中。
但是对于多个组件,它不起作用。
我试过这个,但它根本什么也没做。
我也试过这个,但它也不起作用。
是否可以使用多个嵌套的命名路由器视图正确执行此操作?
vue.js - "prop" 是未定义的,虽然它被正确传递
我一直在关注 VueJS 官方文档,了解如何使用 props 将数据传递给子组件;虽然我没有使用字符串模板。我知道当你的道具是骆驼案时会发生什么;你应该把它写成烤肉串。
然而,情况并非如此,因为它都是小写的并且不起作用。
我正在使用 nuxt 并将我的工作分成文件,它们是:
现在对于它的 JS 文件:
现在,对于我的父组件:
最后:
我想要做的是,使用道具进行一些验证,但它会引发下一个错误:
属性或方法“标识符”未在实例上定义,但在渲染期间被引用。通过初始化该属性,确保该属性是反应性的,无论是在数据选项中,还是对于基于类的组件。
谢谢你。
vue.js - 让所有 Vue 组件都可以使用一个变量,而无需通过 props 显式传递它?
我有一个问题,所以在反应中,我们有反应消费者和提供者,可以让变量传递到我想要的任何地方。Vue有类似的东西吗?我需要将我的 Firebase 类传递给几乎每个组件,所以通过 props 传递它是一个坏主意。
javascript - 如何正确设置 Vuetify 框架的两个导航抽屉?
在我的应用程序中Vue.JS
,我尝试使用两个框架。出于某种原因,我的下一个代码引发了错误。就我而言,每个侧边栏都在一个单独的组件中。如何解决此类错误?v-navigation-drawer
Vuetify
错误:
vue.esm.js?efeb:628 [Vue 警告]:避免直接改变 prop,因为只要父组件重新渲染,该值就会被覆盖。相反,使用基于道具值的数据或计算属性。正在变异的道具:“开放”
BaseLayout.vue:
LeftNavigationDrawer.vue:
RightNavigationDrawer.vue:
vue.js - 在循环中渲染组件,在子组件的方法中使用索引(VueJS)
我有两个组件,其中发生了一些道具交换。Props 是整个 todo 数组,通过单击带有“addTodo”方法的按钮来更新。将数组传递给孩子工作正常。我可以在我的 p-tags 中动态显示道具,但似乎无法在我的子组件的方法中使用它。
这是我的子组件
我传递了一个带有对象作为道具的整个数组,并且使用 p-tag 中的索引可以正常工作,但我也想像这样使用它:
“索引”未定义
一切正常,但我无法在方法中使用索引值。我在这里做错了什么?
javascript - 如何根据接收到的 props 初始化组件中的数据并且不失去响应性
在创建组件之前,我的初始化数据有问题。我的实际问题取决于这个问题:我在我的一个数据属性中失去了反应性,因为我在生命周期挂钩中对其进行了初始化。但我不知道如何data(){}
用我从道具收到的长度初始化一个数组。如果我在生命周期钩子中完成它,那么我将失去反应性,正如我之前提到的。以下是有关我的组件的更多详细信息: 在我的 Vue.js 学习中,我正在尝试实现一个步进器组件。我决定让它更具动态性并具有灵活的尺寸。因此,在我的步进组件道具中,我收到了一个具有这种结构的对象:
比在我的步进器组件中,我使用一个steps
字段来确定另一个数组的长度,该数组保存有关标记或未标记步骤的数据。这是我用来初始化标记步骤数组的代码:
标记步骤是一个空数组,data(){}
因此,在那之后,我有一个错误值数组。在我的模板中,我有一个v-bind:class
多亏了它,所有步骤都没有标记,并且在用户单击“下一步”按钮后它们可以被标记。
my-btn 是我的简单按钮的包装组件。nextStep() 中的代码:
但是,当我单击按钮时,尽管单击按钮后,markedSteps[i] 的实际值已更改为 true,但并未像我预期的那样分配标记圆圈类。我对这些我搞砸的东西感到非常沮丧。任何帮助将不胜感激。我已经检查了有关此主题的文档,并且我已经阅读了“深度反应”部分,但我没有看到答案。
javascript - Vuejs,如何将道具传递给路由器渲染的组件?
我是 Vuejs 的新手,所以很抱歉这是一个新手问题。
我在我的应用程序中添加了一个路由器,我想将我的主应用程序中的数据渲染到我的组件模板中,但它不起作用。
这就是我所拥有的:
我预计text
道具会与我的相关联,App.data.text
但它没有发生。
这是一个 jsfiddle:https ://jsfiddle.net/fguillen/psqztn93
vue.js - 插槽中组件中的 Vue 渲染道具
我有两个组件:
在第一个组件 ( FirstComponent.vue
) 中,我有:
在SecondComponent.vue
我有:
我从数据库发送this.worker
新数据。我使用道具发送这些数据:
在SecondComponent.vue
:
worker
我对in有问题FirstComponent.vue
。我发送了新数据,但这个道具没有渲染。我该如何解决?
编辑:
如果我尝试推送空数据:.then(res => { this.worker = null })
。然后我有错误:
无效的道具:道具“工人”的类型检查失败。预期对象,得到 Null
但在工人的页面数据中并没有消失。