Vue(7)

目录

插件

scoped样式

Todo-list案例


插件

功能:用于增强Vue

本质:包含install方法的一个对象,install的第一个参数是Vue,第二个以后的参数是插件使用者传递的数据

定义插件:

对象.install=function(Vue,options){
//1.添加全局过滤器
Vue.filter(...)
//2.添加全局指令
Vue.directive(...)
//3.配置全局混入(合)
Vue.mixin(...)
//4.添加实例对象
Vue.prototype.$myMethod=function(){...}
Vue.prototype.$myProperty=xxxx
}

使用插件

Vue.use()

 plugins.js

export default{
    install(Vue){
        // 全局过滤器
    Vue.filter('mySlice',function(value){
        return value.slice(0,4)
    })

    // 定义全局指令
    Vue.directive("fbind", {
        // 指令与元素成功绑定时(一上来)
        bind(element, binding) {
          element.value = binding.value;
        },
        // 指令所在元素被插入页面时
        inserted(element, binding) {
          element.focus();
        },
        // 指令所在的模板被重新解析时
        update(element, binding) {
          element.value = binding.value;
        },
      })

    // 定义混入
    Vue.mixin({
        data(){
            return{
                x:100,
                y:200
            }
        }
    })

    // 给Vue原型尚添加一个方法(vm和vc就都能用)
    Vue.prototype.hello=()=>{alert('你好啊!!')}
    }
}

main.js

// 引入Vue
import Vue from 'vue'
// 引入App
import App from './App.vue'

// 引入插件
import plugins from './plugins'
// 关闭Vue的生产提示
Vue.config.productionTip=false

// 应用(使用)插件
Vue.use(plugins)

// 创建vm
new Vue({
    el:'#app',
    render:h=>h(App)
})

scoped样式

作用:让样式在局部生效,防止冲突

写法:

<style scoped>

School.vue

<template>
  <div class="demo">
    <h2>学校名称:{{ name }}</h2>
    <h2>学校地址:{{ address }}</h2>
  </div>
</template>

<script>
export default {
  name: "School",
  data() {
    return {
      name: "尚硅谷atguigu",
      address: "北京",
    };
  },
};
</script>

<!-- 默认css -->
<!-- <style scoped>
  .demo{
    background-color: skyblue;
  }
</style> -->
<style lang="less">
.demo {
  background-color: skyblue;
  .atguigu {
    font-size: 40px;
  }
}
</style>

Todo-list案例

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值