草庐IT

vue指令

全部标签

javascript - 覆盖指令的链接功能

我正在开发一个使用优秀UIBootstraplibrary的应用程序.一切正常,但我偶然发现了bug使用在IE10上崩溃的折叠插件。我在主导航中使用折叠插件,这个插件坏了是个大问题,所以我需要想办法解决这个问题。我真的不想破解主库。看来我应该能够使用找到的方法来装饰这个第三方指令here或here或here,但我似乎无法让它工作。具体来说,我试图覆盖折叠指令的link()函数中的extend()函数来检查IE10浏览器。有没有人这样做过或知道如何做到这一点? 最佳答案 当然!您可以装饰指令并扩展它或完全覆盖它。这是一个很好的blog

javascript - 如何在 Vue.js 中添加动态组件/部分

我需要根据用户交互向组件动态添加子组件。我看了一些oldissue但对我来说这似乎是一个肮脏的hack,此外,这是一个老问题,而且vue开发非常活跃,所以我不知道现在是否有更好的方法。到目前为止,我在thisfiddle上尝试过的内容但显然不起作用,它说$mount只能调用一次。我不知道该怎么做,我的另一个选择是动态组件,但为此我还必须添加动态元素,所以它变成了几乎相同的问题。那么如何在客户端点击或其他客户端事件上添加组件? 最佳答案 您希望从一开始就将自定义组件放在那里,并使用v-if或v-for来显示、隐藏、添加或减去这些组件.

javascript - Vue.js:观察数组长度

我如何使用Vue.js查看数组长度? 最佳答案 在您的虚拟机创建中使用watch部分:varvm=newVue({el:'body',data:{items:[]},computed:{item_length:function(){returnthis.battle_logs.length;}},watch:{items:{handler:function(){console.log('caught!');},deep:true}}});或者查看计算的长度属性:vm.$watch('item_length',function(new

javascript - 如何从 vue 组件调用 App.vue 中的方法

我有一个vue组件和一个vue元素声明,如下所示Vue.component('todo-item',{template:'Thisisatodo'methods:{test:function(){//Iamgettinganerrorhereapp.aNewFunction();}}})varapp=newVue({el:'#app',data:{message:'HelloVue!'},methods:{aNewFunction:function(){alert("inside");}}})如何从vue组件调用vueapp中的方法? 最佳答案

javascript - 在不注入(inject) $rootScope 的情况下对指令中的 Angular 事件使用react

我想知道你是否有一个指令代码的例子,它对像$routeChangeError这样的Angular事件使用react而不注入(inject)$rootScope到它(使用$on在链接函数中)。在我看来,它打破了MV*模式并“产生”气味代码(提供了在指令中操作根范围的可能性)。提前致谢。 最佳答案 没有。如果没有对$scope的某种访问权限,就无法监听Angular事件。这是他们拥有$rootScope服务的主要原因之一,这样您就可以在服务或其他模块中访问$scope。但是,在指令中,您不需要注入(inject)$rootScope,因

javascript - 如何使 rails 与 vue.js 一起工作?

我的问题很简单,如何让RubyonRails应用程序与Vue.js一起工作?详情我先看vue-railsgem,但是将Vue添加到railsAssets管道,我想使用其他npm包,比如browserify。然后我看看那个,browserify-rails在js文件夹app/assets/javascript/中启用commonjs。我还计划为每个RailsController制作一个Vuejs应用程序,并使用vue-resource访问后端操作和vue-router(如果这不是一个好方法,请告诉我),所以我在我的布局中添加了以下行这将添加一个带有Controller名称的js文件,因此

javascript - Vue.js 输入框在输入一个字符后失去焦点

我有一个带有输入字段的View,它可以与给定的按钮相乘。问题是在输入任何一个字符之后,输入字段的焦点就会丢失。您必须再次单击才能输入另一个字符。有人知道可能是什么问题吗?我的模型:'model':[...,'filter':[...,'something':['string']]]我的代码: 最佳答案 问题是您正在使用一个不断变化的值作为key。Vue期望key指示项目的唯一标识符。当您更改它时,它会成为一个新项目,必须重新渲染。在下面的代码片段中,我有两个循环,都使用相同的数据源。第一个是按照您设置的方式键入的。第二个使用inde

javascript - AngularJS Google Map 指令 map 实例

我正在使用http://angular-google-maps.org/这是一个很好的Angular谷歌地图库。但是我想使用像这样的东西不在angularjs上下文中加载的map实例:$scope.map={events:{tilesloaded:function(map){$scope.$apply(function(){$scope.mapInstance=map;});}}}好的,很好,我有mapInstance,我可以以编程方式使用它。但是在应用程序生命周期中,这会延迟-所以换句话说,我想在其他代码之前加载整个指令(并获取map实例)-我只是不想使用其他map事件。

在vue3+vite项目下按需引入vant报错Failed to resolve import解决方案

在vue3+vite项目下按需引入vant报错Failedtoresolveimport解决方案问题描述原因分析解决方案问题描述近日尝试使用vite+vue3+vant开发项目过程中,参考vant官网开发指南->快速上手->引入组件按照上述配置好后,运行vite环境报错:Failedtoresolveimport原因分析根据报错信息,发现是vant的样式引入路径不对。程序解析为:项目路径/node_modules/vant/lib/vant/es/组件/style实际应该是:项目路径/node_modules/vant/lib/vant/es/组件/style多了一个vant/lib路径。解决

javascript - Vue - 无法在 promise 中设置未定义的属性

所以我有以下Vue文件:0exportdefault{data:function(){return{notifications:[],message:"",}},methods:{loadData:function(){Vue.http.get('/notifications').then(function(response){console.log(response.data);//this.notifications=response.data;//this.notifications.push(response.data);this.message="Thisisamessage