创建Vue项目以及引入Iview的方法示例


Posted in Javascript onDecember 03, 2018

创建Vue项目 以及引入Iview

官方文档

# 全局安装 vue-cli
$ npm install --global vue-cli
# 创建一个基于 webpack 模板的新项目
$ vue init webpack my-project
# 安装依赖,走你
$ cd my-project
$ npm install
$ npm run dev

以上是vue官方文档中Vue.js 提供一个 官方命令行工具 创建vue项目的方法。

我创建Vue项目过程

$ vue init webpack vue-iview
? Project name vue-iview
? Project description A Vue.js project
? Author yourname <youremail@example.com>
? Vue build standalone
? Install vue-router? Yes
? Use ESLint to lint your code? Yes
? Pick an ESLint preset Standard
? Setup unit tests with Karma + Mocha? Yes
? Setup e2e tests with Nightwatch? Yes

  vue-cli · Generated "vue-iview".

  To get started:

   cd vue-iview
   npm install
   npm run dev

  Documentation can be found at https://vuejs-templates.github.io/webpack
$ cd vue-iview/
$ cnpm install
$ npm run dev

vue init webpack vue-iview 时我使用默认的选项,直接回车;这里使用cnpm 安装依赖

引入iview

src/main.js

// The Vue build version to load with the `import` command
// (runtime-only or standalone) has been set in webpack.base.conf with an alias.
import Vue from 'vue'
import App from './App'
import router from './router'
import iView from 'iview'
import 'iview/dist/styles/iview.css'  // 使用 CSS

Vue.config.productionTip = false
Vue.use(iView)
/* eslint-disable no-new */
new Vue({
 el: '#app',
 router,
 template: '<App/>',
 components: { App }
})

在main.js中添加了

import iView from 'iview'
import 'iview/dist/styles/iview.css'  // 使用 CSS
Vue.use(iView)

以上3行代码

iview 安装

$ cnpm install --save iview

使用iview 组件

创建 src/components/LoginForm.vue

官方的组件代码缩进不符合要求,需要修改

<template>
  <Form ref="formInline" :model="formInline" :rules="ruleInline" inline>
    <FormItem prop="user">
      <Input type="text" v-model="formInline.user" placeholder="Username">
        <Icon type="ios-person-outline" slot="prepend"></Icon>
      </Input>
    </FormItem>
    <FormItem prop="password">
      <Input type="password" v-model="formInline.password" placeholder="Password">
        <Icon type="ios-locked-outline" slot="prepend"></Icon>
      </Input>
    </FormItem>
    <FormItem>
      <Button type="primary" @click="handleSubmit('formInline')">登录</Button>
    </FormItem>
  </Form>
</template>
<script>
export default {
 data () {
  return {
   formInline: {
    user: '',
    password: ''
   },
   ruleInline: {
    user: [
     { required: true, message: '请填写用户名', trigger: 'blur' }
    ],
    password: [
     { required: true, message: '请填写密码', trigger: 'blur' },
     { type: 'string', min: 6, message: '密码长度不能小于6位', trigger: 'blur' }
    ]
   }
  }
 },
 methods: {
  handleSubmit (name) {
   this.$refs[name].validate((valid) => {
    if (valid) {
     this.$Message.success('提交成功!')
    } else {
     this.$Message.error('表单验证失败!')
    }
   })
  }
 }
}
</script>

src/App.vue:

<template>
 <div id="app">
  <LoginForm></LoginForm>
 </div>
</template>

<script>
import LoginForm from './components/LoginForm'
export default {
 name: 'app',
 components: {
  'LoginForm': LoginForm
 }
}
</script>

<style>
#app {

}
</style>

补充:vue安装完iview后,启动项目,提示 in ./node_modules/dist/styles/iview.css 报错

打开 webpack.base.conf.js,找到 test:/.css$/,添加includ项即可

{
  test:/\.css$/,
  loader:'style-loader!css-loader!stylus-loader',
  include:[
   /src/,
   '/node_modules/iview/dist/styles/iview.css'
  ]
 }

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript中的字符串操作详解
Nov 12 Javascript
用简洁的jQuery方法toggleClass实现隔行换色
Oct 22 Javascript
Node.js中的process.nextTick使用实例
Jun 25 Javascript
JavaScript实现Base64编码转换
Apr 23 Javascript
微信小程序 时间格式化(util.formatTime(new Date))详解
Nov 16 Javascript
js操作浏览器的参数方法
Jan 21 Javascript
npm国内镜像 安装失败的几种解决方案
Jun 04 Javascript
jquery Ajax实现Select动态添加数据
Jun 08 jQuery
解决ztree搜索中多级菜单展示不全问题
Jul 05 Javascript
angular.js中解决跨域问题的三种方式
Jul 12 Javascript
JavaScript使用setTimeout实现倒计时效果
Feb 19 Javascript
vue封装数字翻牌器
Apr 20 Vue.js
利用Vue构造器创建Form组件的通用解决方法
Dec 03 #Javascript
swiper.js插件实现pc端文本上下滑动功能示例
Dec 03 #Javascript
微信小程序显示倒计时功能示例【测试可用】
Dec 03 #Javascript
从零开始实现Vue简单的Toast插件
Dec 03 #Javascript
使用NestJS开发Node.js应用的方法
Dec 03 #Javascript
写gulp遇到的ES6问题详解
Dec 03 #Javascript
使用mpvue搭建一个初始小程序及项目配置方法
Dec 03 #Javascript
You might like
基于asp+ajax和数据库驱动的二级联动菜单
2010/05/06 PHP
基于AppServ,XAMPP,WAMP配置php.ini去掉警告信息(NOTICE)的方法详解
2013/05/07 PHP
php 实现简单的登录功能示例【基于thinkPHP框架】
2019/12/02 PHP
Nigma vs AM BO3 第二场2.13
2021/03/10 DOTA
extJs 文本框后面加上说明文字+下拉列表选中值后触发事件
2009/11/27 Javascript
Dreamweaver jQuery智能提示插件,支持版本提示,支持1.6api
2011/07/31 Javascript
jQuery实现鼠标经过弹出提示信息的地图热点效果
2015/08/07 Javascript
每天一篇javascript学习小结(String对象)
2015/11/18 Javascript
原生JavaScript实现瀑布流布局
2020/06/28 Javascript
JS闭包、作用域链、垃圾回收、内存泄露相关知识小结
2016/05/16 Javascript
jQuery扩展实现text提示还能输入多少字节的方法
2016/11/28 Javascript
axios学习教程全攻略
2017/03/26 Javascript
深入理解Angular.JS中的Scope继承
2017/06/04 Javascript
利用webstrom调试Vue.js单页面程序的方法教程
2017/06/06 Javascript
AngularJS常见过滤器用法实例总结
2017/07/06 Javascript
Angular中响应式表单的三种更新值方法详析
2017/08/22 Javascript
十个免费的web前端开发工具详细整理
2017/09/18 Javascript
浅谈使用React.setState需要注意的三点
2017/12/18 Javascript
Vue.js 十五分钟入门图文教程
2018/09/12 Javascript
ES6的异步操作之promise用法和async函数的具体使用
2019/12/06 Javascript
vue-cli4.x创建企业级项目的方法步骤
2020/06/18 Javascript
Vue组件间数据传递的方式(3种)
2020/07/13 Javascript
[55:35]VGJ.S vs Mski Supermajor小组赛C组 BO3 第二场 6.3
2018/06/04 DOTA
分享Python字符串关键点
2015/12/13 Python
python实现维吉尼亚算法
2019/03/20 Python
基于Python的微信机器人开发 微信登录和获取好友列表实现解析
2019/08/21 Python
python logging添加filter教程
2019/12/24 Python
pycharm永久激活超详细教程
2020/10/29 Python
HTML5不支持标签和新增标签详解
2016/06/27 HTML / CSS
竞选班长演讲稿500字
2014/08/22 职场文书
学习十八大的心得体会
2014/09/12 职场文书
三提三创主题教育活动查摆整改措施
2014/10/25 职场文书
2015年事业单位工作总结
2015/04/27 职场文书
基层医务人员三严三实心得体会
2016/01/05 职场文书
Python使用psutil库对系统数据进行采集监控的方法
2021/08/23 Python
python如何将mat文件转为png
2022/07/15 Python