插件

插件通常会为 Vue 添加全局的功能

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title>插件</title>
        <script src="vue.js"></script>
    </head>
    <body>
        
        <div id="app">
            
            <!-- 使用自定义指令 -->
            <p v-order:value='message'></p>
            
        </div>
        
        
         <script>
            
        
        /**
         * 自定义插件
         */
        
        
        var MyPlugin = {};
        
        MyPlugin.install = function (Vue, options) {    
            
            
            //扩展全局静态属性和方法
            
            Vue.myName = '新插件';
            
            Vue.getMyName = function(){
                
                return '我是新插件';
            };
            
            
            //扩展对象的属性和方法
            
            Vue.prototype.$count = 0;
            
            Vue.prototype.$timer = function(sec,back){
                
                return '创建计时器成功'
            }
            
            
            //注入组件
            Vue.mixin({
                
                created:function(){
                    
                    console.log('MyPlugin扩展了钩子函数')
                }
            })
            
            
            //扩展指令
            Vue.directive('order',{
                
                bind:function(el,binding){ 
                    
                    el.innerText = '自定义指令:'+binding.value;
                }
            })
        }
        
        
        /**
         * 挂载插件
         */
        Vue.use(MyPlugin);
        
        
        
        /**
         * 测试插件
         */
        var vm = new Vue({
            
            el:'#app',
            
            data:{
                
                message:'新指令'
            },
            
            created:function(){
                
                console.log(Vue.myName);
                console.log(Vue.getMyName())
                console.log(this.$count)
                console.log(this.$timer())
            }
        })
        
        </script> 
        
    </body>
</html>

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Vue相关网站参考: Vue中文帮助网站:http://cn.vuejs.org/ Vue github开源地址:...
    情话_2ee5阅读 4,010评论 0 7
  • 扩展Sketch 入门插件基础您的第一个插件开发环境调试ActionAPI发布插件 高级插件捆绑插件,脚本和命令插...
    iOSDevLog阅读 17,591评论 0 34
  • UI组件 element- 饿了么出品的Vue2的web UI工具套件 Vux- 基于Vue和WeUI的组件库 m...
    你猜_3214阅读 13,824评论 0 118
  • 作为销售,你要学会如何闭嘴 在古希腊,有一句著名的名言,聪明的人,借助经验说话,更聪明的人,根据经验不说话。那么在...
    5点半跑步阅读 3,892评论 0 1
  • 【0408我在悦读】1317-彩琼 书名:跟钱钱学理财 作者:水湄物语 篇目:50% 收获: 001理财和投资要真...
    王彩琼阅读 1,423评论 0 0