Elment UI的使用说明

 一、 Elment UI

  1、 简介

    Element UI是饿了么团队提供的一套基于Vue2.0的组件库,可以快速搭建网站,提高开发效率,就如同bootstrap。

  2、组件分类

     ElementUI  适用于PC端

     MintUI 适用于手机移动端

  3、官网

    http://element.eleme.io/

二、快速上手

  1、 安装elment ui

    cnpm install element-ui -S

  2、 在main.js中引入并使用组件(全局引入)

    1、import ElementUI from 'element-ui'          //只是引入了ElementUI的js文件

    2、import 'element-ui/lib/theme-default/index.css' //该样式文件需要单独引入,引入的是ElementUI的css样式文件

       3、Vue.use(ElementUI);  //使用ElementUI组件,这种方式引入了ElementUI中所有的组件

    4、示例:

import Vue from 'vue'
import ElementUI from 'element-ui'
import 'element-ui/lib/theme-default/index.css' //该样式文件需要单独引入
import App from './App.vue'

Vue.use(ElementUI);

new Vue({
  el: '#app',
  render: h => h(App)
})
View Code

 

  3、 在webpack.config.js中添加loader    

    1、 CSS样式和字体图标都需要由相应的loader来加载,所以需要style-loader、css-loader

    2、默认并没有style-loader模块,所以需要单独安装

      cnpm install style-loader --save-dev

    3、示例

var path = require('path')
var webpack = require('webpack')

module.exports = {
  entry: './src/main.js',
  output: {
    path: path.resolve(__dirname, './dist'),
    publicPath: '/dist/',
    filename: 'build.js'
  },
  module: {
    rules: [
      {
        test: /\.vue$/,
        loader: 'vue-loader',
        options: {
          loaders: {
          }
          // other vue-loader options go here
        }
      },
      {
        test: /\.js$/,
        loader: 'babel-loader',
        exclude: /node_modules/
      },
      {
        test: /\.(png|jpg|gif|svg)$/,
        loader: 'file-loader',
        options: {
          name: '[name].[ext]?[hash]'
        }
      },
      {
        test:/\.css$/,
        loader:'style-loader!css-loader'//加载elment ui的style和css
      },
      {
        test: /\.(eot|svg|ttf|woff|woff2)(\?\S*)?$/,
        loader: 'file-loader'
      },
      {
        test:/\.less$/,
        loader:'less-loader'
      }
    ]
  },
  resolve: {
    alias: {
      'vue$': 'vue/dist/vue.esm.js'
    }
  },
  devServer: {
    historyApiFallback: true,
    noInfo: true
  },
  performance: {
    hints: false
  },
  devtool: '#eval-source-map'
}

if (process.env.NODE_ENV === 'production') {
  module.exports.devtool = '#source-map'
  // http://vue-loader.vuejs.org/en/workflow/production.html
  module.exports.plugins = (module.exports.plugins || []).concat([
    new webpack.DefinePlugin({
      'process.env': {
        NODE_ENV: '"production"'
      }
    }),
    new webpack.optimize.UglifyJsPlugin({
      sourceMap: true,
      compress: {
        warnings: false
      }
    }),
    new webpack.LoaderOptionsPlugin({
      minimize: true
    })
  ])
}
View Code

    4、 使用组件

<template>
  <div id="app">
    {{msg}}
    <br>
    <!-- 按钮 -->
    <el-button type="primary">我的按钮</el-button>
    <el-button type="danger">我的按钮</el-button>
    <el-button type="info">我的按钮</el-button>
    <el-button type="warning">我的按钮</el-button>
    <el-button type="success">我的按钮</el-button>
    <br>
    <br>
    <el-button type="success" icon="edit">编辑</el-button>
    <el-button type="success" icon="search">搜索</el-button>
    <el-button type="primary">上传<i class="el-icon-upload el-icon--right"></i></el-button>
    <hr>
    <br>
    <!-- 图标 -->
    <i class="el-icon-close"></i>
    <i class="el-icon-delete"></i>
    <i class="el-icon-loading"></i>
    <hr>
    <!-- 布局 -->
    <el-row>
      <el-col :span="6" class="grid">welcome</el-col>
      <el-col :span="6" class="grid">to</el-col>
      <el-col :span="6" class="grid">itany</el-col>
      <el-col :span="6" class="grid">网博</el-col>
    </el-row>
    <el-row>
      <el-col :span="12" class="grid">welcome</el-col>
      <el-col :span="12" class="grid">to</el-col>
    </el-row>
    <hr>
    <!-- 日期选择器 -->
    <DatePicker></DatePicker>
    <!-- 文件上传 -->
    <Upload></Upload>



  </div>
</template>

<script>
import DatePicker from './components/DatePicker.vue'//引入自己定义的组件
import Upload from './components/Upload.vue'

export default {
  name: 'app',
  data () {
    return {
      msg: '欢迎来到南京网博'
    }
  },
  components:{//注册自己引入的组件
    DatePicker,
    Upload
  }
}
</script>

<style lang="less"> /* 必须要指定lang="less" */
  .grid{
    border:1px solid #ccc;
    font-size:20px;
    color:@color;
    .h(50px);
  }
  @color:red;
  .h(@height){
    height:@height;
  }
</style>
APP.VUE

 

<template>
    <el-date-picker
      v-model="value"
      type="date"
      placeholder="选择日期"
      size="small"
      :picker-options="options">
    </el-date-picker>    
</template>

<script>
    export default {
        data(){
            return {
                value:'',
                options:{
                    disabledDate(time) {
                        return time.getTime() < Date.now() - 8.64e7;//计算时间在今天之前
                    },
                    firstDayOfWeek:1
                }
            }
        }
    }
</script>
DatePicker.vue

 

<template>
    <el-upload
      class="upload-demo"
      action="https://jsonplaceholder.typicode.com/posts/"
      :on-preview="handlePreview"
      :on-remove="handleRemove"
      :file-list="fileList">
      <el-button size="small" type="primary">点击上传</el-button>
      <div slot="tip" class="el-upload__tip">只能上传jpg/png文件,且不超过500kb</div>
    </el-upload>
</template>

<script>
    export default {
        data(){
            return {
                fileList: [
                        {
                            name: 'food.jpeg', 
                            url: 'https://fuss10.elemecdn.com/3/63/4e7f3a15429bfda99bce42a18cdd1jpeg.jpeg?imageMogr2/thumbnail/360x360/format/webp/quality/100'
                        }, 
                        {
                            name: 'food2.jpeg', 
                            url: 'https://fuss10.elemecdn.com/3/63/4e7f3a15429bfda99bce42a18cdd1jpeg.jpeg?imageMogr2/thumbnail/360x360/format/webp/quality/100'
                        }
                ]
            }
        },
         methods: {
          handleRemove(file, fileList) {
            console.log(file, fileList);
          },
          handlePreview(file) {
            console.log(file);
          }
        }
    }

</script>
Upload.vue

 


    5、 使用less(动态css,在style中必须要指定lang="less")

      1、安装loader,需要两个:less、less-loader

        cnpm install less less-loader -D

      2、 在webpack.config.js中添加loader    

    6、 按需引入组(局部引入)

      1、 安装babel-plugin-component

        cnpm install babel-plugin-component -D  

      2、 配置.babelrc文件
  

 "plugins": [["component", [
        {
          "libraryName": "element-ui",
          "styleLibraryName": "theme-default"
        }
    ]]]
View Code

 


      3、只引入需要的插件

转载于:https://www.cnblogs.com/xuanan/p/7868688.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 要使用 Element UI 实现选择下拉框,可以按照以下步骤进行: 1. 首先确保你已经安装了 Element UI 库。 2. 在需要使用选择下拉框的组件中,引入 Select 组件。 ```javascript <template> <div> <el-select v-model="selectedValue" placeholder="请选择"> <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value"></el-option> </el-select> </div> </template> <script> export default { data() { return { selectedValue: '', options: [ { value: 'option1', label: '选项1' }, { value: 'option2', label: '选项2' }, { value: 'option3', label: '选项3' }, { value: 'option4', label: '选项4' } ] } } } </script> ``` 在上述代码中,我们使用了 `el-select` 和 `el-option` 标签来创建选择下拉框,并通过 `v-model` 实现了双向数据绑定。`options` 数组中存储了下拉框中的选项,`label` 属性用于显示选项的文字描述,`value` 属性用于存储选项的值。 3. 最后,可以根据需要设置选择下拉框的其他属性,例如 `placeholder`、`disabled`、`clearable` 等等,具体可参考 Element UI 官方文档。 以上就是使用 Element UI 实现选择下拉框的基本方法。 ### 回答2: 要使用 Element UI 实现选择下拉框,您可以按照以下步骤进行: 1. 首先,在项目中安装 Element UI。可以通过 npm 或 yarn 进行安装,例如使用以下命令:`npm install element-ui` 或 `yarn add element-ui`。 2. 在使用的文件中引入 Element UI 的选择下拉框组件。可以使用 `import` 语句引入需要的组件,例如:`import { Select, Option } from 'element-ui'`。 3. 在需要使用选择下拉框的地方,使用 `<el-select>` 标签包裹需要的选项。 4. 在 `<el-select>` 标签内部,使用 `<el-option>` 标签定义下拉选择的每个选项,并设置对应的值和标签内容。例如: ```html <el-select v-model="selectedValue"> <el-option label="选项1" value="option1"></el-option> <el-option label="选项2" value="option2"></el-option> <el-option label="选项3" value="option3"></el-option> </el-select> ``` 5. 在对应的 Vue 实例中,定义 `selectedValue` 数据绑定到 `v-model` 上,以便获取用户选择的值。 6. 您还可以根据需要设置更多的属性,例如可搜索属性、禁用状态、多选等。可以参考 Element UI 官方文档中 Select 组件的 API 说明。 7. 最后,确保您的项目中已经正确引入了 Element UI 的样式文件,可以在项目中的入口文件(如 `main.js` 或 `App.vue`)中使用 `import 'element-ui/lib/theme-chalk/index.css'` 进行引入。 通过以上步骤,您就可以成功使用 Element UI 实现选择下拉框了。请根据自己的实际情况进行相应的调整和修改。 ### 回答3: Element UI 是基于 Vue.js 的一套桌面端组件库,其中包含了很多常用的 UI 组件,包括选择下拉框。 要实现选择下拉框,首先需要引入 Element UI,并正确配置 Vue.js。 在 HTML 中,可以使用 `<el-select>` 标签来创建一个选择下拉框,通过 `v-model` 属性来绑定选择的值。例如: ``` <el-select v-model="selectedValue"> <el-option label="选项一" value="1"></el-option> <el-option label="选项二" value="2"></el-option> <el-option label="选项三" value="3"></el-option> </el-select> ``` 在 Vue.js 的 `data` 属性中,定义 `selectedValue` 变量来存储选择的值。例如: ``` data() { return { selectedValue: '' } }, ``` 这样就可以在页面中创建一个简单的选择下拉框,其中有三个选项可以选择:选项一、选项二和选项三。当选择一个选项时,`selectedValue` 的值就会自动更新。 如果需要获取选择的值,可以在 Vue.js 的 `methods` 属性中定义一个方法,并在选择下拉框的 `change` 事件中调用该方法。例如: ``` methods: { handleSelectChange(value) { console.log('选择的值是:', value); } } ``` 然后在选择下拉框中添加 `@change` 属性来指定选择变化时调用的方法。例如: ``` <el-select v-model="selectedValue" @change="handleSelectChange"> ``` 这样就能够在选择下拉框中实现选择的监听,并获取选择的值。 除了基本的功能外,Element UI 的选择下拉框还提供了很多自定义的属性和事件,可以根据需求进行配置和使用

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值