我具有此文件夹结构,我想访问资源中的文件。我正在做
<link href="{{ asset('sass/app.scss') }}" rel="stylesheet" />
<script src="{{ asset('js/app.js') }}" type="text/javascript"></script>
但是它说没有找到,所以我认为我需要添加resources
,所以我尝试了
<link href="{{ asset('resources/sass/app.scss') }}" rel="stylesheet" />
<script src="{{ asset('resources/js/app.js') }}" type="text/javascript"></script>
我运行以下命令:
let mix = require('laravel-mix');
mix.js('resources/assets/js/app.js', 'public/js')
.sass('resources/assets/sass/app.scss', 'public/css');
答案 0 :(得分:2)
tl; dr :您需要运行npm run dev
,npm run watch
或npm run prod
才能将资产编译为“可用”的js / css文件。 / p>
您永远不应链接到resources
文件夹中的资产,因为资产将不可用。 public
文件夹中的任何内容都可以链接到。
在您的本地/开发环境中,运行npm run dev
将资产编译到public
文件夹中(请参阅项目根文件夹中的webpack.mix.js
来确切地了解会发生什么)。如果您碰巧进行了许多更改,则可以运行npm run watch
,这样就不必在每次更改后都键入npm run dev
-如果检测到更改,资产将自动编译。
使用香草webpack.mix.js
npm run dev
将resources/assets/js/app.js
编译到public/js
文件夹中,将resources/assets/sass/app.scss
编译到public/css
文件夹中,使您{ {1}}和public/js/app.js
-这些是您应链接到public/css/app.css
文件中的文件:
.blade
您可以在“编译资产(混合)”文档链接上阅读更多内容: