zoukankan      html  css  js  c++  java
  • VUE学习笔记二

    package.json不可以写注释!!!!!!!!!!
    初始化:npm init -y

    有时候使用 npm i node-sass -D 装不上,这时候,就必须使用  cnpm i node-sass -D

    在普通页面中使用render函数渲染组件

    在webpack中配置.vue组件页面的解析


    1. 运行 cnpm i vue -S 将vue安装为运行依赖;

    2. 运行 cnpm i vue-loader vue-template-compiler -D 将解析转换vue的包安装为开发依赖;

    3. 运行 cnpm i style-loader css-loader -D 将解析转换CSS的包安装为开发依赖,因为.vue文件中会写CSS样式;

    4. 在 webpack.config.js 中,添加如下 module 规则:

    module: {
        rules: [
          { test: /.css$/, use: ['style-loader', 'css-loader'] },
          { test: /.vue$/, use: 'vue-loader' }
    
        ]
      }


    5. 创建 App.js 组件页面:

        <template>
          <!-- 注意:在 .vue 的组件中,template 中必须有且只有唯一的根元素进行包裹,一般都用 div 当作唯一的根元素 -->
          <div>
            <h1>这是APP组件 - {{msg}}</h1>
            <h3>我是h3</h3>
          </div>
        </template>
    View Code
        <script>
        // 注意:在 .vue 的组件中,通过 script 标签来定义组件的行为,需要使用 ES6 中提供的 export default 方式,导出一个vue实例对象
        export default {
          data() {
            return {
              msg: 'OK'
            }
          }
        }
        </script>
    View Code
        <style scoped>
        h1 {
          color: red;
        }
        </style>
    View Code


    6. 创建 main.js 入口文件:

        // 导入 Vue 组件
        import Vue from 'vue'
        // 导入 App组件
        import App from './components/App.vue'
        // 创建一个 Vue 实例,使用 render 函数,渲染指定的组件
        var vm = new Vue({
          el: '#app',
          render: c => c(App)
        });

    在使用webpack构建的Vue项目中使用模板对象?

    1. 在 webpack.config.js 中添加 resolve 属性:
     

    resolve: {
        alias: {
          'vue$': 'vue/dist/vue.esm.js'
        }
      }


      ES6中语法使用总结

    1. 使用  export default  和  export  导出模块中的成员; 对应ES5中的  module.exports  和  export

    2. 使用  import   from   和  import '路径'` 还有  import {a, b} from '模块标识'` 导入其他模块

    3. 使用箭头函数:`(a, b)=> { return a-b; }`



      在vue组件页面中,集成vue-router路由模块

    [vue-router官网](https://router.vuejs.org/)

    1. 导入路由模块:

    import VueRouter from 'vue-router'


    2. 安装路由模块:

    Vue.use(VueRouter);


    3. 导入需要展示的组件:

    import login from './components/account/login.vue'
    import register from './components/account/register.vue'


    4. 创建路由对象:

    var router = new VueRouter({
      routes: [
        { path: '/', redirect: '/login' },
        { path: '/login', component: login },
        { path: '/register', component: register }
      ]
    });


    5. 将路由对象,挂载到 Vue 实例上:

    var vm = new Vue({
      el: '#app',
      // render: c => { return c(App) }
      render(c) {
        return c(App);
      },
      router // 将路由对象,挂载到 Vue 实例上
    });


    6. 改造App.vue组件,在 template 中,添加 router-link 和 router-view :

      <router-link to="/login">登录</router-link>
      <router-link to="/register">注册</router-link>
      <router-view></router-view>


      组件中的css作用域问题

      抽离路由为单独的模块


      使用 饿了么的 MintUI 组件

    [Github 仓储地址](https://github.com/ElemeFE/mint-ui)

    [Mint-UI官方文档](http://mint-ui.github.io/#!/zh-cn)

    1. 导入所有MintUI组件:

    import MintUI from 'mint-ui'


    2. 导入样式表:

    import 'mint-ui/lib/style.css'


    3. 在 vue 中使用 MintUI:

    Vue.use(MintUI)


    4. 使用的例子:

    <mt-button type="primary" size="large">primary</mt-button>



      使用 MUI 组件
    [官网首页](http://dev.dcloud.net.cn/mui/)
    [文档地址](http://dev.dcloud.net.cn/mui/ui/)

    1. 导入 MUI 的样式表:

    import '../lib/mui/css/mui.min.css'


    2. 在 webpack.config.js 中添加新的loader规则:

    { test: /.(png|jpg|gif|ttf)$/, use: 'url-loader' }


    3. 根据官方提供的文档和example,尝试使用相关的组件

      将项目源码托管到oschina中

    1. 点击头像 -> 修改资料 -> SSH公钥 [如何生成SSH公钥](http://git.mydoc.io/?t=154712)

    2. 创建自己的空仓储,使用  git config --global user.name "用户名"` 和  git config --global user.email ***@**.com  来全局配置提交时用户的名称和邮箱

    3. 使用  git init  在本地初始化项目

    4. 使用  touch README.md  和  touch .gitignore  来创建项目的说明文件和忽略文件;

    5. 使用  git add .` 将所有文件托管到 git 中

    6. 使用  git commit -m "init project"` 将项目进行本地提交

    7. 使用  git remote add origin 仓储地址 将本地项目和远程仓储连接,并使用origin最为远程仓储的别名

    8. 使用  git push -u origin master  将本地代码push到仓储中



      App.vue 组件的基本设置

    1. 头部的固定导航栏使用  Mint-UI  的  Header  组件;

    2. 底部的页签使用  mui  的  tabbar`;

    3. 购物车的图标,使用  icons-extra  中的  mui-icon-extra mui-icon-extra-cart ,同时,应该把其依赖的字体图标文件  mui-icons-extra.ttf ,复制到  fonts  目录下!

    4. 将底部的页签,改造成  router-link  来实现单页面的切换;

    5. Tab Bar 路由激活时候设置高亮的两种方式:

     + 全局设置样式如下:

         .router-link-active{
              color:#007aff !important;
        }


     + 或者在  new VueRouter  的时候,通过  linkActiveClass  来指定高亮的类:

         // 创建路由对象
        var router = new VueRouter({
          routes: [
            { path: '/', redirect: '/home' }
          ],
          linkActiveClass: 'mui-active'
        });
    View Code


      实现 tabbar 页签不同组件页面的切换

    1. 将 tabbar 改造成  router-link  形式,并指定每个连接的  to  属性;

    2. 在入口文件中导入需要展示的组件,并创建路由对象:

        // 导入需要展示的组件
        import Home from './components/home/home.vue'
        import Member from './components/member/member.vue'
        import Shopcar from './components/shopcar/shopcar.vue'
        import Search from './components/search/search.vue'
        // 创建路由对象
    
        var router = new VueRouter({
          routes: [
            { path: '/', redirect: '/home' },
            { path: '/home', component: Home },
            { path: '/member', component: Member },
            { path: '/shopcar', component: Shopcar },
            { path: '/search', component: Search }
          ],
          linkActiveClass: 'mui-active'
        });
    View Code


      使用 mt-swipe 轮播图组件

    1. 假数据:

    lunbo: [
            'http://www.itcast.cn/images/slidead/BEIJING/2017440109442800.jpg',
            'http://www.itcast.cn/images/slidead/BEIJING/2017511009514700.jpg',
            'http://www.itcast.cn/images/slidead/BEIJING/2017421414422600.jpg'
          ]


    2. 引入轮播图组件:

    <!-- Mint-UI 轮播图组件 -->
        <div class="home-swipe">
          <mt-swipe :auto="4000">
            <mt-swipe-item v-for="(item, i) in lunbo" :key="i">
              <img :src="item" alt="">
            </mt-swipe-item>
          </mt-swipe>
        </div>
      </div>


      在`.vue 组件中使用 vue-resource 获取数据

    1. 运行 cnpm i vue-resource -S 安装模块

    2. 导入 vue-resource 组件

    import VueResource from 'vue-resource'

    3. 在vue中使用 vue-resource 组件

    Vue.use(VueResource);

    vue rules验证规则

    参考博客


     

  • 相关阅读:
    ubuntu LAMP的安装
    windows中安装liunx虚拟机
    jQuery Responsive OneByOne Slider Plugin
    轮播图收集
    移动端图片延迟加载插件
    图片幻灯插件
    小tip: base64:URL背景图片与web页面性能优化
    基于HTML5的可预览多图片Ajax上传
    字体平滑解决方案
    webstorm scss编译css配置
  • 原文地址:https://www.cnblogs.com/biaogejiushibiao/p/9971276.html
Copyright © 2011-2022 走看看