如何让 vuetify 样式在 laravel 8 中工作?
How to get vuetify styles to work in laravel 8?
我正在做一个新项目,我需要在 laravel 8 中使用 vuetify 框架,拉出以下命令来安装库:
composer require laravel/ui
php artisan ui vue
npm i
npm i vuetify
npm i sass sass-loader deepmerge -D
我按照一些文档在 laravel 8 中安装了 vuetify,接下来我展示我的 package.json:
"devDependencies": {
"axios": "^0.21",
"bootstrap": "^4.0.0",
"browser-sync": "^2.26.14",
"browser-sync-webpack-plugin": "^2.2.2",
"deepmerge": "^4.2.2",
"jquery": "^3.2",
"laravel-mix": "^6.0.6",
"lodash": "^4.17.19",
"popper.js": "^1.12",
"postcss": "^8.1.14",
"resolve-url-loader": "^2.3.1",
"sass": "^1.32.8",
"sass-loader": "^8.0.2",
"vue": "^2.5.17",
"vue-loader": "^15.9.5",
"vue-template-compiler": "^2.6.10"
},
"dependencies": {
"vue-router": "^3.5.1",
"vuetify": "^2.4.5",
"vuex": "^3.6.2"
}
app.scss 和 app.js 个文件:
/* app.scss */
@import url('https://cdn.jsdelivr.net/npm/@mdi/font@4.x/css/materialdesignicons.min.css');
@import '~vuetify/dist/vuetify.min.css';
@import 'variables';
/* app.js */
require('./bootstrap');
window.Vue = require('vue').default;
import router from '@r/routes';
import Vuetify from 'vuetify'
import 'vuetify/dist/vuetify.min.css';
Vue.use(Vuetify)
import RenderVue from '@/RenderVue';
new Vue({
router,
vuetify: new Vuetify(),
render: (h) => h(RenderVue)
}).$mount('#app');
完成所有这些安装后,我尝试将一个类型为 success 的 v-alert 以及 vuetify 文档中的一个卡片作为示例,最后它呈现如下:
我们可以看到安装了vuetify,因为它能识别组件,但是不能识别样式,为什么可以呢?
在 app.css 文件中,似乎生成了 vuetify 样式。
文件 app.css:
/*!
* Vuetify v2.4.5
* Forged by John Leider
* Released under the MIT License.
终于解决了,就是它调用了组件,但是要让样式正常工作,一切都必须封装在 v-app 中
我正在做一个新项目,我需要在 laravel 8 中使用 vuetify 框架,拉出以下命令来安装库:
composer require laravel/ui
php artisan ui vue
npm i
npm i vuetify
npm i sass sass-loader deepmerge -D
我按照一些文档在 laravel 8 中安装了 vuetify,接下来我展示我的 package.json:
"devDependencies": {
"axios": "^0.21",
"bootstrap": "^4.0.0",
"browser-sync": "^2.26.14",
"browser-sync-webpack-plugin": "^2.2.2",
"deepmerge": "^4.2.2",
"jquery": "^3.2",
"laravel-mix": "^6.0.6",
"lodash": "^4.17.19",
"popper.js": "^1.12",
"postcss": "^8.1.14",
"resolve-url-loader": "^2.3.1",
"sass": "^1.32.8",
"sass-loader": "^8.0.2",
"vue": "^2.5.17",
"vue-loader": "^15.9.5",
"vue-template-compiler": "^2.6.10"
},
"dependencies": {
"vue-router": "^3.5.1",
"vuetify": "^2.4.5",
"vuex": "^3.6.2"
}
app.scss 和 app.js 个文件:
/* app.scss */
@import url('https://cdn.jsdelivr.net/npm/@mdi/font@4.x/css/materialdesignicons.min.css');
@import '~vuetify/dist/vuetify.min.css';
@import 'variables';
/* app.js */
require('./bootstrap');
window.Vue = require('vue').default;
import router from '@r/routes';
import Vuetify from 'vuetify'
import 'vuetify/dist/vuetify.min.css';
Vue.use(Vuetify)
import RenderVue from '@/RenderVue';
new Vue({
router,
vuetify: new Vuetify(),
render: (h) => h(RenderVue)
}).$mount('#app');
完成所有这些安装后,我尝试将一个类型为 success 的 v-alert 以及 vuetify 文档中的一个卡片作为示例,最后它呈现如下:
我们可以看到安装了vuetify,因为它能识别组件,但是不能识别样式,为什么可以呢? 在 app.css 文件中,似乎生成了 vuetify 样式。 文件 app.css:
/*!
* Vuetify v2.4.5
* Forged by John Leider
* Released under the MIT License.
终于解决了,就是它调用了组件,但是要让样式正常工作,一切都必须封装在 v-app 中