自定义全局插件 组件

官网地址:https://cn.vuejs.org/v2/guide/plugins.html

使用指令创建项目:

运行项目,看项目能否正常运行:

运行结果说明项目能正常运行:

在官网中有这样的部分:

在生成的项目中新建该目录:

myButton.vue

 1 <template>
 2     <div class="mybtn">
 3
 4         <button>{{name}}</button>
 5     </div>
 6 </template>
 7
 8 <script>
 9     export default{
10     data(){
11         return{
12             name:this.btnName
13         }
14     },
15     props:{
16         btnName:{
17             type:String,
18             default:‘确认‘
19
20
21         }
22
23
24     }
25     }
26 </script>
27
28 <style>
29 button{
30
31     width:150px ;
32     height: 35px;
33     font-size: 18px;
34     font-weight: 700;
35     color: rgb(53,73,93);
36     background-color: rgb(65,184,131);
37 }
38 </style>

myButton.js

import mybtn from ‘./myButton.vue‘

export default{

    install:function(Vue){

        Vue.component(‘mybtn‘,mybtn);

    }
}

main.js

import Vue from "vue";
import App from "./App.vue";
import router from "./router";
import mybtn from ‘./custom/myButton.js‘

Vue.use(mybtn)

Vue.config.productionTip = false;

new Vue({
  router,
  render: h => h(App)
}).$mount("#app");

About.vue

<template>
  <div class="about">
    <h1>This is an about page</h1>
    <mybtn btnName="about Button"></mybtn>
  </div>
</template>

Home.vue

<template>
  <div class="home">
    <img alt="Vue logo" src="../assets/logo.png" />
    <mybtn btnName="about Button"></mybtn>
  </div>
</template>

<script>

export default {
  name: "home",

};
</script>

从效果图中看出问题:

问题描述:点击button的时候没有发生任何改变

解决问题方法:

Home.vue

在button中加入一个click事件:

 1 <template>
 2   <div class="home">
 3     <img alt="Vue logo" src="../assets/logo.png" />
 4     <h1>{{msg}}</h1>
 5     <mybtn btnName="about Button" @click.native="changeName"></mybtn>
 6   </div>
 7 </template>
 8
 9 <script>
10
11
12
13 export default {
14   name: "home",
15  methods:{
16      changeName(){
17          this.msg="home"
18      }
19  },
20  data(){
21      return{
22          msg:"欢迎来到perfect*博客园"
23      }
24  }
25
26 };
27 </script>

加入监听事件

其中    .native 监听组件根元素的原生事件

实现的效果:

原文地址:https://www.cnblogs.com/jiguiyan/p/11593577.html

时间: 2024-11-03 01:35:30

自定义全局插件 组件的相关文章

Vue 自定义全局message组件

Message.vue <template> <transition name="fade"> <div class="message" :class="type" v-if="visible"> <i class="icon-type iconfont" :class="'icon-'+type"></i> <div c

vue学习--自定义全局vue组件

文档目录: |--components |-loading(组件文件夹) |-loading.vue (loading组件核心) |-index.js //配置导出组件,并且install 主要配置到处文件index.js 代码 import LoadingComponent from './loading.vue'  //引用组件文件 //定义并注册组件 const Loading = {    install: function(Vue) {        Vue.component('Lo

自定义Angular插件 - 网站用户引导

最近由于项目进行了较大的改版,为了让用户能够适应这次新的改版,因此在系统中引入了“用户引导”功能,对于初次进入系统的用户一些简单的使用培训training.对于大多数网站来说,这是一个很常见的功能.所以在开发这个任务之前,博主尝试将其抽象化,独立于现有系统的业务逻辑,将其封装为一个通用的插件,使得代码更容易扩展和维护. 无图无真相,先上图: 关于这款trainning插件的使用很简单,它采用了类似Angular路由一样的配置,只需要简单的配置其每一步training信息. title:step的

mvc自定义全局异常处理

异常信息处理是任何网站必不可少的一个环节,怎么有效显示,记录,传递异常信息又成为重中之重的问题.本篇将基于上篇介绍的html2cancas截图功能,实现mvc自定义全局异常处理.先看一下最终实现效果:http://yanweidie.myscloud.cn/Home/Index 阅读目录 我理解中好的异常处理 自定义异常处理 问题拓展 总结 回到顶部 我理解中好的异常处理     好的异常信息处理应该具有以下几个优点 显示效果佳,而不是原生黄页 能够从异常中直接分析出异常源 能够记录传递异常信息

炫酷JQUERY自定义对话框插件JDIALOG_JDIALOG弹出对话框和确认对话框插件

多种类型自定义对话框插件jDialog是一款基于jquery实现的轻量级多种类型的自定义对话框插件 在项目开发中.一般会美化 alert(); 的样式.那么今天我就和大家分享一款非常炫的插件 先来看一下程序最后的效果图片吧 下面是HTMl代码 <center> <button id="test1">alert方式调用</button> <br/><br/> <button id="test2">

ansible(七)Conditionals 和 loops,自定义loops插件

ansible的Conditionals 和 loops 和salt-stack比起来真的太强大了.   salt-stack使用判断循环,好像,只能使用模板里面的判断和循环. 而ansible本身自带了适用于各种场景的判断循环插件.. 不但如此,像loops,我们还可以自己编写插件,满足我们的实际需求. 先说说Conditionals吧 Conditionals相对loops来说,简单,就一个关键字when 和咱们其他的程序语言的条件判断一个样,when 后面也是加一个bool值,或者bool

看一下自定义的插件怎么样

    publicvoid setUp() throws Exception {protectedfinal Log log = LogFactory.getLog(this.getClass());    public User currOperator;//绝大多数的时候都有登录人信息,特此创建    public BaseUserRole userRole;//登录人角色实例    public String filePathAndName = "D:\\junit.txt";

【笔记】【Informatica】自定义序列生成器组件

/************************************************************************** * * Copyright (c) 2003 Informatica Corporation. This file contains * material proprietary to Informatica Corporation and may not be copied * or distributed in any form withou

【分分钟上手weiphp插件开发】Vol.1——第一个自定义weiphp插件:MyHello

我们都知道,学习任何一门编程语言,一般来说第一个范例程序就是输出“Hello World”.从今天开始我们来学习weiphp插件开发,也从一个HelloWorld级别的插件开始讲起,因为安装好了的weiphp框架,默认安装了weiphp官方开发的HelloWorld插件,所以这里为了防止跟官方的插件冲突,我们开发的第一个自定义weiphp插件取名为MyHello,并通过这个简单的插件来讲解weiphp插件开发的整个流程.整个[分分钟上手weiphp插件开发]系列教程都是直接从创建一个新的插件开始