问题标签 [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.

0 投票
1 回答
171 浏览

javascript - 如何隐藏与当前值不匹配的元素并与prop进行比较

我在一页上有不同的词组,比如说名词动词和形容词。描述每个组的方式是使用它的“词性”。这个“词性”被打印在一个小盒子里。所以你在小盒子里有组的“词性”,名词,我想实现这一点,当我点击那个盒子时,我会隐藏动词和形容词。如果我要点击动词,我会隐藏名词和形容词,等等。现在,每个组的“词性”正在作为道具传递。

问题是我想将当前页面上存在的词性与单击的词性进行比较,但我无法区分它。

在我的模板中,我有:

{ pos }是来自我的道具

这给了我打印在页面上的所有词性(考虑到这是其他东西的子组件,并且这些词组打印的次数与组数一样多)。所以我认为添加一种方法来检测点击的词性会有所帮助。

当我点击当前项目时,我得到了当前的词性,正如你this.pos在这个上下文中看到的,不再是页面上的词性列表,而是变成了当前点击的部分演讲。我的想法是以某种方式在pos和之间进行比较this.pos,但它们现在是相同的。

如何进行比较说:如果有不等于当前单击的词性,请采取一些措施(添加类或 wtv)来隐藏元素。

0 投票
2 回答
802 浏览

vue.js - 使用多个组件在 Vue Router 中传递 props

如果在特定路由上,我正在尝试将道具传递给路由器中的组件。

找到的所有教程仅使用一个组件,因此可以简单地将道具附加到列表中。

但是对于多个组件,它不起作用。

我试过这个,但它根本什么也没做。

我也试过这个,但它也不起作用。

是否可以使用多个嵌套的命名路由器视图正确执行此操作?

0 投票
1 回答
703 浏览

vue.js - "prop" 是未定义的,虽然它被正确传递

我一直在关注 VueJS 官方文档,了解如何使用 props 将数据传递给子组件;虽然我没有使用字符串模板。我知道当你的道具是骆驼案时会发生什么;你应该把它写成烤肉串。

然而,情况并非如此,因为它都是小写的并且不起作用。

我正在使用 nuxt 并将我的工作分成文件,它们是:

现在对于它的 JS 文件:

现在,对于我的父组件:

最后:

我想要做的是,使用道具进行一些验证,但它会引发下一个错误:

属性或方法“标识符”未在实例上定义,但在渲染期间被引用。通过初始化该属性,确保该属性是反应性的,无论是在数据选项中,还是对于基于类的组件。

谢谢你。

0 投票
2 回答
790 浏览

vuejs2 - Vuejs:监听 props 变化并使用它

我正在使用 Vue JS 开发一个项目,我需要观察道具的变化并在<span>.

我使用过watch(),它显示道具值已分配。

我添加了截图

但是当我在里面调用它时<span>,值没有显示。

0 投票
1 回答
51 浏览

vue.js - 让所有 Vue 组件都可以使用一个变量,而无需通过 props 显式传递它?

我有一个问题,所以在反应中,我们有反应消费者和提供者,可以让变量传递到我想要的任何地方。Vue有类似的东西吗?我需要将我的 Firebase 类传递给几乎每个组件,所以通过 props 传递它是一个坏主意。

0 投票
1 回答
5003 浏览

javascript - 如何正确设置 Vuetify 框架的两个导航抽屉?

在我的应用程序中Vue.JS,我尝试使用两个框架。出于某种原因,我的下一个代码引发了错误。就我而言,每个侧边栏都在一个单独的组件中。如何解决此类错误?v-navigation-drawerVuetify

错误:

vue.esm.js?efeb:628 [Vue 警告]:避免直接改变 prop,因为只要父组件重新渲染,该值就会被覆盖。相反,使用基于道具值的数据或计算属性。正在变异的道具:“开放”

BaseLayout.vue:

LeftNavigationDrawer.vue:

RightNavigationDrawer.vue:

0 投票
1 回答
1163 浏览

vue.js - 在循环中渲染组件,在子组件的方法中使用索引(VueJS)

我有两个组件,其中发生了一些道具交换。Props 是整个 todo 数组,通过单击带有“addTodo”方法的按钮来更新。将数组传递给孩子工作正常。我可以在我的 p-tags 中动态显示道具,但似乎无法在我的子组件的方法中使用它。

这是我的子组件

我传递了一个带有对象作为道具的整个数组,并且使用 p-tag 中的索引可以正常工作,但我也想像这样使用它:

“索引”未定义

一切正常,但我无法在方法中使用索引值。我在这里做错了什么?

0 投票
1 回答
479 浏览

javascript - 如何根据接收到的 props 初始化组件中的数据并且不失去响应性

在创建组件之前,我的初始化数据有问题。我的实际问题取决于这个问题:我在我的一个数据属性中失去了反应性,因为我在生命周期挂钩中对其进行了初始化。但我不知道如何data(){}用我从道具收到的长度初始化一个数组。如果我在生命周期钩子中完成它,那么我将失去反应性,正如我之前提到的。以下是有关我的组件的更多详细信息: 在我的 Vue.js 学习中,我正在尝试实现一个步进器组件。我决定让它更具动态性并具有灵活的尺寸。因此,在我的步进组件道具中,我收到了一个具有这种结构的对象:

比在我的步进器组件中,我使用一个steps字段来确定另一个数组的长度,该数组保存有关标记或未标记步骤的数据。这是我用来初始化标记步骤数组的代码:

标记步骤是一个空数组,data(){} 因此,在那之后,我有一个错误值数组。在我的模板中,我有一个v-bind:class

多亏了它,所有步骤都没有标记,并且在用户单击“下一步”按钮后它们可以被标记。

my-btn 是我的简单按钮的包装组件。nextStep() 中的代码:

但是,当我单击按钮时,尽管单击按钮后,markedSteps[i] 的实际值已更改为 true,但并未像我预期的那样分配标记圆圈类。我对这些我搞砸的东西感到非常沮丧。任何帮助将不胜感激。我已经检查了有关此主题的文档,并且我已经阅读了“深度反应”部分,但我没有看到答案。

0 投票
2 回答
394 浏览

javascript - Vuejs,如何将道具传递给路由器渲染的组件?

我是 Vuejs 的新手,所以很抱歉这是一个新手问题。

我在我的应用程序中添加了一个路由器,我想将我的主应用程序中的数据渲染到我的组件模板中,但它不起作用。

这就是我所拥有的:

我预计text道具会与我的相关联,App.data.text但它没有发生。

这是一个 jsfiddle:https ://jsfiddle.net/fguillen/psqztn93

0 投票
0 回答
126 浏览

vue.js - 插槽中组件中的 Vue 渲染道具

我有两个组件:

在第一个组件 ( FirstComponent.vue) 中,我有:

SecondComponent.vue我有:

我从数据库发送this.worker新数据。我使用道具发送这些数据:

SecondComponent.vue

worker我对in有问题FirstComponent.vue。我发送了新数据,但这个道具没有渲染。我该如何解决?

编辑:

如果我尝试推送空数据:.then(res => { this.worker = null })。然后我有错误:

无效的道具:道具“工人”的类型检查失败。预期对象,得到 Null

但在工人的页面数据中并没有消失。