zoukankan      html  css  js  c++  java
  • .vue文件的封装处理

    原本的js对象编写过于繁琐,我们用.vue组件来拆分。

    即,把app.js文件拆分为App.vue和Cpn.vue

    1安装vue-loader 和 vue-template-compiler

    npm install vue-loader vue-template-compiler --save-dev

    配置webpack.config.js

           { 
             test: /.vue$/, 
             use: ['vue-loader'] 
           },

    报错,缺少VueLoaderPlugin插件,因为14版以上要开始自己安装插件,所以我们先用低版本

    package.json

      "vue-loader": "^14.0.0",

    然后执行npm install 重新安装

    代码

    index.html

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
        <head>
            <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
            <title>New Web Project</title>
        </head>
        <body>
          <div id='app'>
          <!--真实开发中这里什么也不写-->
         </div>
        </body>
        <script src="./dist/bundle.js"></script>
    </html>

    srcmain.js

    //使用vue
    import Vue from 'vue'
    
    // import App from "./vue/app"
    import App from "./vue/App.vue"
    
    new Vue({
      el:'#app',
      data:{
        message:"Hello webpack"
      },
      template:"<App />",
      components:{
        App
      }
    })

    srcvueApp.vue

    <template>
      <div>
         <h2 class='title'>{{message}}</h2>
         <button @click="btnClick">按钮</button>
          <Cpn></Cpn>
       </div>
    </template>
    <script>
      import Cpn from "./Cpn.vue";
      export default {
        name:"App",
        components:{
          Cpn
        },
        data(){
          return {
            message:'我是app组件绿色'
          }
        },
        methods:{
          btnClick(){
            
          }
        }
      }
    </script>
    <style scoped>
      .title{
        color: #4cff00;
      }
    </style>

    srcvueCpn.vue

    <template>
        <div class='title'>
            <p>{{name}}</p>
        </div>
    </template>
    
    <script>
      export default {
        name: "Cpn",
        data(){
          return {
            name:'我是Cpn组件 紫色。'
          }
        }
      }
    </script>
    
    <style scoped>
        .title{
            color: #d900ff;
        }
    </style>

    结果

    源代码

    链接:https://pan.baidu.com/s/1hjdOEgexZokYQ3aSudV1wg
    提取码:l6ni

  • 相关阅读:
    2004选拔赛 最小值
    [JSOI2008]最大数maxnumber
    HDOJ 2896 病毒侵袭
    POJ 2243 Knight Moves
    HDOJ Is It A Tree?
    MST 小希的迷宫
    PKU 3278 Catch That Cow
    POJ 2488 A Knight's Journey
    [SCOI2006]整数划分
    COJ 1259: 跳跳
  • 原文地址:https://www.cnblogs.com/polax/p/13032485.html
Copyright © 2011-2022 走看看