vue 项目初建和常见问题

Posted yezichengy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vue 项目初建和常见问题相关的知识,希望对你有一定的参考价值。

拿猫眼为例:
步骤:
需要预装node.js
1. 查看node版本,控制台输入
    node -v
        v10.16.1

2. 查看vue版本
    vue -V  (Vue不是内部或外部命令...)--执行步骤3

3. 安装@vue/cli脚手架
    npm i -g @vue/cli

4. 创建新项目
    vue create maoyan
        1.Please pick a preset:
            Manually select features

        Check the features needed for your project:(上下键移动, 空格键选择, 选完之后按回车确定)
            Babel Router Vuex CSS Pre-processors
        
        Use history mode for router?
            y

        Pick a CSS pre-processor
            Sass/SCSS(width node-sass)

        Where do you prefer placing config for Babel, PostCSS, ESLint, etc.? (Use arrow keys)
            In package.json

5. 进入项目目录下, 并启动服务
    cd maoyan       进入项目目录
    npm run serve   启动服务

6. 重置样式
    5-1. 输入命令安装reset.css: npm install reset.css --save
    5-2. 在main.js文件中引入使用: import ‘reset.css‘

7. 获取数据时, 需要先设置代理进行跨域
    7-1. 新建vue.config.js文件, 配置代理
        module.exports = 
            devServer:     //使用web服务器启动
                port: 8888, //指定端口号
                proxy:     //设置代理(解决跨域)
                    "/ajax": 
                        target: "http://m.maoyan.com",
                        changeOrigin: true
                    
                
            ,
        
    
    7-2. 使用axios进行数据获取(axios是对ajax进行封装的插件)
        7-2-1. 安装: npm i axios -S
        7-2-2. 在main.js文件中引入: import axios from ‘axios‘
        7-2-3. 在main.js文件中, 将axios声明到Vue的原型使用: Vue.prototype.$http = axios
        7-2-4. 获取数据: this.$http.get(url)

报错问题:
    1.These dependencies were not defined   下面这些依赖找不到
        可能出现的情况分为两种:
            a. 本地文件路径写错了
                @/components/comon/header.vue in ./node_module........
                解决: 对应报错, 排查路径问题(查看在哪些文件引入了header.vue文件, 路径在哪个文件中写错了)
                @/components/commons/header.vue

            b. 需要通过npm安装的依赖没有安装, 直接引用
                axios in ./src/main.js is not defined
                解决: 对应报错, 查看package.json文件, 看是否安装过此依赖
                    b-1. 如package.json存在该依赖, 则可能是由于网络原因, 丢包了
                        删除node_modules文件夹, 重新npm i 进行安装依赖
                    b-2. 如package.json不存在该依赖, 则重新安装
                        npm i axios -S

项目结构:
    maoyan
        --dist          打包后的文件夹
        --node_modules  所有依赖包管理
        --public    图标和index.html页面(为了写vue实例挂载的容器)
        --src       管理所有资源
            --assets        图标,图片,静态资源
            --components    写组件
            --style         存放css文件
            --views         写页面
            App.vue         应用的主组件(将首页内容渲染到挂载节点)--详情见main.js[通过渲染函数渲染App.vue, 挂载到#app]
            main.js         相当于webpack的入口文件, 在此管理所有的引入, 全局可使用
            router.js       配置路由(所有需要进行路由配置的组件, 需要通过import先引入进来)
            store.js        vuex状态管理器
        .gitignore      上传git仓库时配置需要被忽略的文件
        babel.config.js 将ES高版本转为ES5
        package.json    可自定义命令, 管理依赖包的版本号


以上是关于vue 项目初建和常见问题的主要内容,如果未能解决你的问题,请参考以下文章

用vue cli3创建的vue项目部署到nginx之初体验

Vue前后端分离项目初体验

npm安装vue的初体验

vue-cli 3.0 初体验

vue之初入门

vue-cli@3.x初体验之前篇-回顾vue-cli@2.x创建项目的流程