zoukankan      html  css  js  c++  java
  • 8.使用scss,创建组件,scoped局部作用域

    1.使用scss

    scss是能让css从属关系看起来更加直观

    在项目目录下运行安装命令:

    cnpm install node-sass --save-dev
    cnpm install sass-loader --save-dev

    然后在项目目录中的webpack.config.js中的rules里加入配置代码:

    {
            test: /.scss$/,
            loaders: ['style', 'css', 'sass']
    },

     如果出现报错:

    Module build failed: TypeError: this.getResolve is not a function

     sass-loader的版本过高导致的编译错误,当前最高版本是8.x,需要退回到7.3.1运行

    cnpm uninstall sass-loader(卸载当前版本)
    
    cnpm install sass-loader@7.3.1 --save-dev
    
    cnpm install

    2.新建组件

    在src目录下新建目录components,在components目录下新建组件取名Home.vue:

    <template>
        <div>
            <h2>这是一个首页组件</h2>
            <button @click="run">弹出首页组件提示</button>
        </div>
    </template>
    <script>
    export default {
      name: 'home',  
      data () {
        return {
            msg:'首页组件'
        }
      },
      methods:{
        run(){
            alert(this.msg)
        }
      }
    
    }
    </script>
    <style lang="scss" scoped>
    h2{
        color: red;
    }
    </style>

    3.在根组件App.vue中引用挂载组件

    <template>
      <div id="app">
        <h2>{{msg}}</h2>
        <v-home></v-home>
      </div>
    </template>
    <script>
    // 1.引入组件
    // 2.挂载组件
    // 3.在模板中引用
    import Home from './components/Home.vue';
    export default {
      name: 'app',
      data () {
        return { 
          msg:'根组件'
        }
      },
      methods:{
      },
      components:{
        'v-home':Home
      }
    
    }
    </script>
    <style>
    
    </style>

     组件除了可以在根组件中挂载,也可以在组件之间互相挂载。

  • 相关阅读:
    Python基础Day1—下
    Python基础Day1—上
    Asp.net +Jquery-uploadify多文件上传
    C#txt文件读写基本操作
    C#获取窗口,模拟按键操作
    百度搜索优化-如何使搜索结果显示图文
    纯CSS3实现超立体的3D图片侧翻倾斜效果
    Android http通信 HttpURLConnection
    Android Socket 知识点汇总
    Android http通信案例
  • 原文地址:https://www.cnblogs.com/xuepangzi/p/11614725.html
Copyright © 2011-2022 走看看