vue项目杂记

文件目录结构

  1. src
  2. main.js
  3. app.vue
  4. package.json
  5. webpack_config_dev.js

需要安装的包

  1. 1. vue
  2. cnpm i vue --save
  3. 2. vue-loader
  4. cnpm i vue-loader style-loader css-loader vue-template-compiler --save-dev
  5. 3. webpack
  6. cnpm i webpack webpack-dev-server html-webpack-plugin --save-dev

main文件

  1. import Vue from 'vue'
  2. import App from './app.vue'
  3. new Vue({
  4. el: '#app',
  5. render: h => h(App)
  6. })

app文件

  1. <template>
  2. <div>
  3. hello
  4. </div>
  5. </template>

webpack_config_dev.js文件

参考地址:

  1. https://doc.webpack-china.org/concepts/loaders/
  2. https://github.com/jantimon/html-webpack-plugin

代码:

  1. var HtmlWebpackPlugin = require('html-webpack-plugin')
  2. module.exports = {
  3. entry: './src/main.js',
  4. module: {
  5. rules: [
  6. {
  7. test: /\.vue$/,
  8. use: [
  9. {
  10. loader: 'vue-loader'
  11. }
  12. ]
  13. }
  14. ]
  15. },
  16. plugins: [new HtmlWebpackPlugin({template: './template.html', filename: 'index.html'})]
  17. }

package.json文件

  1. "dev": "webpack-dev-server --progress --config webpack_config_dev.js --open --port 6008 --hot"

项目中引入mint-ui

  1. 安装:
  2. cnpm i mint-ui -S
  3. main.js中导入
  4. import Mint from 'mint-ui'
  5. Vue.use(Mint)
  6. import 'mint-ui/lib/style.css'
  7. 之后直接用就行了

项目中引入vue-router

  1. 安装:
  2. cnpm i vue-router -S
  3. html中:
  4. <router-link to="/home">
  5. <img src="https://img08.jiuxian.com/bill/2016/0224/cccd8df26a754c139de800406af82178.png">
  6. </router-link>
  7. <router-view></router-view>
  8. js中:
  9. 配置路径
  10. 根实例注册
  11. import VueRouter from 'vue-router'
  12. Vue.use(VueRouter)
  13. const router = new VueRouter({
  14. routes: [
  15. {
  16. path: '/home',
  17. component: Home
  18. }, {
  19. path: '/category',
  20. component: Category
  21. }, {
  22. path: '/cart',
  23. component: Cart
  24. }, {
  25. path: '/user',
  26. component: User
  27. }
  28. ]
  29. })
  30. new Vue({
  31. router,
  32. render: h => h(App)
  33. }).$mount('#app')

重定向redirect

  1. {
  2. path: '/',
  3. redirect: '/home'
  4. }

vue-resource

参考地址:

  1. https://github.com/pagekit/vue-resource

安装:

  1. cnpm i vue-resource -S

例子:

  1. {
  2. // GET /someUrl
  3. this.$http.get('/someUrl').then(response => {
  4. // get body data
  5. this.someData = response.body;
  6. }, response => {
  7. // error callback
  8. });
  9. }

监听路由变化 watch

  1. watch: {
  2. $route(){
  3. this.checkUrl()
  4. }
  5. },
  6. methods: {
  7. checkUrl() {
  8. }
  9. }

返回上一页

  1. this.$router.go(-1)

vue项目杂记的更多相关文章

  1. vue-cli快速构建Vue项目

    vue-cli是什么? vue-cli 是vue.js的脚手架,用于自动生成vue.js模板工程的. vue-cli怎么使用? 安装vue-cli之前,需要先装好vue 和 webpack npm i ...

  2. requirejs + vue 项目搭建2

    上篇是年后的项目搭建的,时间比较仓促,感觉有点low 1.gulp-vue 文件对公用js的有依赖,以后别的同事拿去搭其他项目,估计会被喷 2.不支持vue-loader一样写模版语言和es6语法 最 ...

  3. vue项目目录介绍

    Vue项目目录 初始化项目 vue init webpack []projectname] cd [projectname] npm install vue run dev 目录树 +---build ...

  4. Vue 项目实战系列 (一)

    最近一直在学习Vue,基本的文档看完后就需要进行具体的项目进行练手了,本系列文章主要是将我学习过程记录下来,和大家一起学习交流. 我在git上找到了一个淘票票的Vue项目,项目地址: https:// ...

  5. 简单vue项目脚手架(vue+webpack2.0+vuex+vue-router)

    github地址 使用技术栈 webpack(^2.6.1) webpack-dev-server(^2.4.5) vue(^2.3.3) vuex(^2.3.1) vue-router(^2.5.3 ...

  6. vue项目构建与实战

    关于 微信公众号:前端呼啦圈(Love-FED) 我的博客:劳卜的博客 知乎专栏:前端呼啦圈 前言 由于vue相对来说比较平缓的学习过程和新颖的技术思路,使其受到了广大前后端开发者的青睐,同时其通俗易 ...

  7. Vue项目搭建完整剖析全过程

    Vue项目搭建完整剖析全过程 项目源码地址:https://github.com/ballyalex 有帮助的话就加个星星呗~!  项目技术栈:vue+webpack+bower+sass+axios ...

  8. 利用webpack构建vue项目

    快速搭建vue项目 一,确认自己有无搭建好node以及npm环境,这些是前提,具体安装方法可参考https://nodejs.org/en/. 二,开始构建项目. 第1步:新建一个文件夹,随意命名. ...

  9. 如何快速把 Vue 项目升级到 webpack3

    由于 webpack3升级后,新增了 Scope Hositing(作用域提升) 功能,据说是对 js的性能提升很大.因此,我们做了一个测试对比,就是 webpack3和 webpack1/2 的性能 ...

随机推荐

  1. ViewService

    ViewService 在分布式系统中,最常见的场景就是主备架构.但是如果主机不幸宕机,如何正确的通知客户端当前后端服务器的状况成为一个值得研究的问题.本文描述了一种简单的模型用于解决此问题. 背景 ...

  2. 常州模拟赛d8t1 友好数对

    分析:其实就是问你有多少对a,b有且仅有两位不相同.我们可以先枚举这两位,对应ai枚举一位,对应bi枚举一位,如果ai^(1<<x) == bi^(1<<y),证明恰好有两位不 ...

  3. android从sdcard中读取bitmap

    String sdcard_path=Environment.getExternalStorageDirectory().getCanonicalPath(); String file_path=sd ...

  4. CH上的Think Bear#1模拟赛

    题目:http://www.contesthunter.org/contest/CH%20Round%20%2352%20%20Thinking%20Bear%20%231%20(NOIP%E6%A8 ...

  5. 【APIO2012】【BZOJ2809】派遣dispatching

    2809: [Apio2012]dispatching Time Limit: 10 Sec Memory Limit: 128 MB Submit: 1932 Solved: 967 [Submit ...

  6. Linux网络编程:UDP Socket编程范例

    TCP协议提供的是一种可靠的,复杂的,面向连接的数据流(SOCK_STREAM)传输服务,它通过三段式握手过程建立连接.TCP有一种"重传确认"机制,即接收端收到数据后要发出一个肯 ...

  7. UVA 23 out of 5

    题目例如以下: Problem I 23 Out of 5 Input: standard input Output: standardoutput Time Limit: 1 second Memo ...

  8. jdk1.6下使用sardine和jackrabbit-webdav的问题

    同步一个遇到的问题,前几天,客户给了一个server地址和usernamepassword.让把上面的文件,download到还有一台server上.我查了下,发现该server使用文件协议是webd ...

  9. QSettings读写注冊表、配置文件

    简述 普通情况下.我们在开发软件过程中,都会缓存一些信息到本地,能够使用轻量级数据库sqlite.也能够操作注冊表.读写配置文件. 关于QSettings的使用前面已经介绍过了.比較具体,见" ...

  10. 具体解释clone函数

    我们都知道linux中创建新进程是系统调用fork,但实际上fork是clone功能的一部分,clone和fork的主要差别是传递了几个參数.clone隶属于libc.它的意义就是实现线程. 看一下c ...