Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vue.js/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vue.js 如何将全局导入的Vue组件设置为具有预设属性?_Vue.js_Vuejs2_Vue Component - Fatal编程技术网

Vue.js 如何将全局导入的Vue组件设置为具有预设属性?

Vue.js 如何将全局导入的Vue组件设置为具有预设属性?,vue.js,vuejs2,vue-component,Vue.js,Vuejs2,Vue Component,例如,我正在使用 每当我需要它时,我总是至少使用这个类和属性 <vue-numeric class="form-control border-input text-right" :separator="." :minus=false /> <vue-numeric v-model="price" :min=0 /> 所以在模板中,我只需要添加一些特定的属性 <vue-numeric class="form-control border-i

例如,我正在使用

每当我需要它时,我总是至少使用这个类和属性

<vue-numeric
   class="form-control border-input text-right"
   :separator="."
   :minus=false
/>
<vue-numeric v-model="price" :min=0 />
所以在模板中,我只需要添加一些特定的属性

<vue-numeric
   class="form-control border-input text-right"
   :separator="."
   :minus=false
/>
<vue-numeric v-model="price" :min=0 />


您可以在组件的根元素中指定类。并在安装的挂钩中应用默认道具。

创建一个应用默认道具值的功能包装组件:

Vue.component('Vue-numeric-default'{
功能性:对,
渲染(h,ctx){
返回h('vue-numeric',Object.assign({},ctx.data{
//仅当未定义类时应用默认类
staticClass:ctx.data.class | | ctx.data.staticClass
?ctx.data.staticClass
:“窗体控件边框输入文本权限”,
//应用默认道具
道具:Object.assign({
分隔符:'.'',
减:错,
},ctx.props),
}),ctx。儿童);
},
});
你也可以使用

{ separator: '.', ...ctx.props }
语法而不是

Object.assign({ separator: '.' }, ctx.props)
如果支持的话

可以为组件中的props方法定义默认值,如果 要覆盖它,必须调用它,否则它具有默认值

您应该将以下代码添加到“vue数字”组件文件中


您的意思是编辑节点_模块中的组件?这是我用npm导入的库。正如我之前指定的,我不想从node_模块中更改它。它是我用npm导入的库。我不想更改node_模块中的原始组件,因为从git克隆项目的队友将无法使用它,如果组件通过npm更新,代码将消失。看起来很有希望,我正在尝试它,它就像一个魅力。甚至可以添加有关对象扩展操作符的信息。非常感谢你。