美文网首页
laravel5.8+vue+element 后台搭建(1)-

laravel5.8+vue+element 后台搭建(1)-

作者: 道翼 | 来源:发表于2019-10-17 11:54 被阅读0次

这个时间,laravel已经出6了,选择5.8的原因是因为学习接触的laravel社区summer的课程,做完初版后会进行版本升级

vue版本2.5,初版后会再进行cli3的升级

1. 配置本地laravel环境

  • 确保已经安装composer
composer create-project --prefer-dist laravel/laravel blog "5.8.*"

2. 前端依赖安装

  • 确保机器上已经安装了 Node.js 和 NPM。
npm install

3. 添加laravel路由

  • 我放在了admin目录下,路由是在web.php,这个可以根据自己需求更改
Route::get('/', function () { 
     return view('admin/index');
 });

4. 新建 index.blade.php 视图文件,和 Vue 交互

  • resources/view/admin 目录下新建
<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="csrf-token" content="{{ csrf_token() }}">
    <title>轻声</title>
</head>
<body>
<div id="app"></div>
<script src="{{ mix('js/app.js') }}"></script>
</body>
</html>
  • 设置meta标签,官方文档解释说:除了检查 POST 参数中的 CSRF 令牌外, VerifyCsrfToken 中间件还会检查 X-CSRF-TOKEN 请求头。你应该将令牌保存在 HTML meta 标签中,但使用axios请求时会报请求头的错误,之后的文章会进行讲解

  • app这个是代表的项目根节点,同时页面引入app.js

5. 新建App.vue文件

  • resources/js 目录下新建,div包裹代码块(vue文件必需)
<template>
        <div>
            <router-view></router-view> <!--路由引入的组件将在这里被渲染-->
        </div>
</template>

<script>
    export default {
        name: "App"
    }
</script>

<style scoped>

</style>

6. 新建Hello.vue文件

  • resources/js/components 目录下新建
<template>
    <div class="container">
        Hello World
    </div>
</template>

<script>
    export default {
        name: "Hello"
    }
</script>

7. 安装 vue-router

  • 构建项目时,Vue Router 它可以帮助你更好的组织代码,优化路由
npm install vue-router --save-dev
  • 配置 vue-router,在 resources/js 目录下新建目录 config,同时在 config 目录下新建 router.js 文件
import Vue from 'vue';
import VueRouter from 'vue-router';
Vue.use(VueRouter);

export default new VueRouter({
    saveScrollPosition: true,
    routes: [
        {
            name: 'hello',
            path: '/',
            component: resolve => void(require(['../components/Hello.vue'], resolve))
        }
    ]
});

8. 修改app.js文件,渲染组件

import App from './App.vue';
import router from './config/router.js';

window.router = router;
import './config/function.js'

const app = new Vue({
    el: '#app',
    router,                 //使用router
    render: h => h(App)     //加载App.vue文件,也可换成别的vue文件,需在页面import引入
});

9. 编译前端资源,运行

npm run watch
  • 监听资源变化
    npm run watch 命令能够在终端持续运行并且监听相关文件的变化。一旦它发现改变,Webpack 将自动重新编译资源,npm run dev只进行一次编译
  • Lavarel Mix
    npm run 命令默认会去执行根目录下的 webpack.mix.js 文件,使用 Laravel 提供的 Laravel Mix 编译资源,并将编译好的资源放在根目录 public 文件夹下,更多可以去查社区文档
    编译资源 Mix

10. 访问项目,我本地的虚拟站点

image.png

11. 引入 Element

  • 运行命令
npm i element-ui -S 
  • 修改 resources/js/app.js 文件
window.router = router;
import './config/function.js'                        //这是我定义的公共库

import ElementUI from 'element-ui';
import 'element-ui/lib/theme-chalk/index.css';      //最新版更改了目录名字为theme-chalk
Vue.use(ElementUI);
  • 修改 Hello.vue 文件,使用 Element 组件
<template>
    <div class="container">
        Hello World
        <el-button type="text" @click="open">点击打开 Message Box</el-button>
    </div>
</template>

<script>
    export default {
        name: "Hello",
        methods: {
            open() {
                this.$alert('这是一段内容', '标题名称', {
                    confirmButtonText: '确定',
                    callback: action => {
                        this.$message({
                            type: 'info',
                            message: `action: ${ action }`
                        });
                    }
                });
            }
        }
    }
</script>
  • 运行成功,npm run watch 在命令行界面持续运行编译


    image.png

ps: 借鉴了一些laravel5.7+Vue+ Element 环境搭建的知识,如果有其他错误请评论

相关文章

  • laravel5.8+vue+element 后台搭建(1)-

    这个时间,laravel已经出6了,选择5.8的原因是因为学习接触的laravel社区summer的课程,做完初版...

  • laravel5.8+vue+element 后台搭建(2)-

    最近一直在写东西,没来得及更新,上一篇已经搭建完了基本结构,接下来是数据请求,就从登陆开始 vue数据请求一般用a...

  • flask(3)

    这次我们聊聊后台页面的搭建,后台通常是用于管理的 后台页面搭建 我们类似于前台搭建,我们搭建一个后台管理员登录界面...

  • 2018-11-20

    计划 1、管理后台框架搭建,完成列表页 整个后台框架也可以作为我leewr的管理后台。 2、6.30起床 追溯...

  • Vue 后台管理项目1-后台搭建

    后台搭建 1.将 API Server 部署到本地: 用自己电脑的服务器,可以避免所有仿写项目的人请求同一个服务器...

  • 后台搭建

    首先创建父工程Fight-parent里面包含几个子module1. fight-common2. fight-i...

  • 第二波~

    电商后台的搭建!

  • sentry使用教程

    1. 登录sentry后台管理系统,没有注册一个 这是一个已经搭建好的后台http://172.31.1.22:8...

  • Java后台-1.环境搭建

    今天开始记录如何开发一个网站,可以说是从零开始。 主要用到的技术:开发语言:Java框架:Spring Boot+...

  • 第三章 在线教育平台(快速搭建后台管理系统)

    快速搭建后台管理系统 标签: admin python ajango xadmin 后台管理系统 xadmin 两...

网友评论

      本文标题:laravel5.8+vue+element 后台搭建(1)-

      本文链接:https://www.haomeiwen.com/subject/duqmmctx.html