草庐IT

Vue组件

全部标签

javascript - 在 vue 路由器中更改主体样式

我正在使用Vuerouter有两页:letroutes=[{path:'/',component:require('./components/HomeView.vue')},{path:'/intro',component:require('./components/IntroView.vue')}]这很好用,只是我的每个组件都有不同的主体样式:HomeView.vue:Thisisthehomepage!exportdefault{}body{background:red;}IntroView.vue:Introductionexportdefault{}body{backgroun

javascript - Vue.js 全局事件总线

我正在尝试创建一个全局事件总线,以便两个同级组件可以相互通信。我四处寻找;但是,我找不到任何有关如何实现的示例。这是我目前所拥有的:varbus=newVue();Vue.component('Increment',{template:"#inc",data:function(){return({count:0})},methods:{increment:function(){varincrement=this.count++bus.$emit('inc',increment)}}})Vue.component('Display',{template:"#display",data:f

javascript - Vue.js:v-for 完成后的事件

我正在尝试使用Vue.js构建一个简单的聊天应用程序。我的问题是在写新消息时消息区域需要滚动到底部。我使用v-for指令循环遍历消息。v-for更新DOM时是否有事件?我已经做到了让消息区域div监听组件的消息数组。我尝试在将消息附加到数组的同一函数中将消息区域div的scrollTop设置为99999。但问题是v-for没有完成更新DOM,因此它不会滚动到正确的点。 最佳答案 我遇到了类似的问题,但我使用vue.nextTick()采取了不同的方法。我需要确保v-for已完成渲染,因为该组件不会立即重新渲染,它将在队列为空时的下一

javascript - Vue单元测试报错: vuex requires a Promise polyfill in this browser

我使用vue-cli创建了一个项目,并在其中添加了vuex和vue-router。我正在尝试为其设置单元测试,但出现以下错误。没有Vuex,它曾经可以工作。PhantomJS2.1.1(MacOSX0.0.0)ERRORError:[vuex]vuexrequiresaPromisepolyfillinthisbrowser.atwebpack:///~/vuex/dist/vuex.js:145:0以下是相关的包版本:"babel-core":"^6.0.0","babel-eslint":"^7.0.0","babel-loader":"^6.0.0","vue":"^2.1.0"

javascript - VueJS 组件不渲染

我有一个非常基本的VueJS应用程序,我正在按照该网站进行构建。Here's代码,为什么这个组件没有渲染?HTML:{{message}}JS:newVue({el:'#app',data:{message:'HelloVue.js!'}})Vue.component('todo-item',{template:'Thisisalistitem'}) 最佳答案 使用指定el挂载元素内的组件定义组件before使用newVue初始化Vue实例Vue.component('todo-item',{template:'Thisisalis

javascript - Vue.js v-html contenteditable 防止 dom 刷新以防止光标/插入符跳转

作为引用,我使用的是Vue2.0、Vuex和Firebase。我正在构建一个contenteditable组件,使用v-html绑定(bind)来呈现innerHTML。数据在KeyUp上更新。每当数据更新时,DOM元素都会用"new"数据刷新,导致插入符号/光标跳回到内容可编辑的div的开头。我研究了Rangy和其他一些stackoverflow解决方案,但我觉得最简单的解决方案是从数据刷新中解除绑定(bind)DOM元素。我希望数据仍然在firebase中更新,但不会导致元素刷新。有没有办法让我仍然使用v-html但阻止DOM元素随数据刷新?还是有另一种方法可以在不自动绑定(bin

javascript - 如何在 Storybook React App 中嵌入 StencilJS 组件?

我正在尝试整合Stencil和Storybook在同一个项目中。我一直在关注thissetupguide和thisone然而,其中一个步骤是将组件库发布到NPM,这不是我想要的。我有这个repo我用组件库(src文件夹)配置了它,并用位于storybook文件夹中的Storybook配置了这些组件的审阅者。问题是,当我使用Stencil编译组件并复制Storybook应用程序中的dist文件夹并导入组件时,没有任何渲染。使用customheadtags调整配置我能够正确导入它,但没有应用任何样式。当我打开网络面板时,导入组件时出现一些错误:因此该组件出现在DOM中,但可见性设置为隐藏,

javascript - Angular 自定义组件中的不一致验证问题

为了展示一种真实世界的例子,假设我们想在我们的应用程序中使用@angular/material的日期选择器。我们想在很多页面上使用它,所以我们想很容易地将它添加到一个到处都具有相同配置的表单中。为了满足这一需求,我们围绕创建了一个自定义Angular组件。与ControlValueAccessor实现能够使用[(ngModel)]在上面。我们希望在组件中处理典型的验证,但与此同时,我们希望将验证结果提供给包含我们的CustomDatepickerComponent的外部组件。.作为一个简单的解决方案,我们可以实现validate()像这样的方法(innerNgModel来自导出的ngM

javascript - 如何使用组件将动态 HTML 加载到 DIV 中? Angular 5

这两天我一直在努力寻找这个问题的解决方案。不幸的是,我得不到我想要的。我正在使用Angular5。这是我的函数的样子:GetItemsOfHolder(item:any,divName:string,recursive:boolean=false,typeName:string=""){returnhtml;}一切正常,除非我返回的html包含一个名为Select2的包这就是我用来将html添加到此div中的方法,它工作得很好。直到我想添加动态包。我的意思是返回html包含这样的包组件:itemhtml+=""这只是将纯文本返回给浏览器,并没有按预期工作。我想要的是将字符串转换为组件或

javascript - 嵌套的 vue.js 实例/元素

这听起来像是一个真正的菜鸟问题,但我对MVVM还是JS中的MVC还是很陌生,所以提前道歉。我正在尝试使用vue.js,到目前为止我很喜欢它的简单性。但对于我正在尝试做的事情,我认为我需要以不同的方式去做。我想将Vue实例/元素嵌套在彼此内部,但是当然,父级将在初始化时读取DOM时使用子级。为了论证,下面是我的意思的一个例子,我没有做这样的事情,但这是举例说明我的意思的最简单的方法:{{message}}{{message}}例如我的JS将是:newVue({el:"body",data:{message:"I'mtheparent"}});newVue({el:"#another",d