我正在练习Laravel网站,并且已经通过npm install安装了chart.js。
这是一个愚蠢的问题,但是现在我如何从这里使用它(或通过npm安装的任何东西)?
文件安装在节点模块文件夹中。我应该使用页面标题中的标签来引用这些文件吗?
如果我这样做:
<script type="text/javascript" src="/node_modules/chart.js/dist/Chart.min.js"></script>
然后它起作用了,我可以显示一个图表。但这感觉不对。 npm难道不应该自动照顾所有这些吗?
答案 0 :(得分:0)
您在代码段中正在执行的操作是导入程序包以供全局使用。 NPM更像是一个软件包管理器(Node Package Manager),用于安装软件包并管理依赖项。
因此,为回答您的问题,没有NPM通常不会自动处理该问题。您正在做的是安装后访问/导入软件包的一种方法。另一种方法是https://docs.npmjs.com/using-npm-packages-in-your-projects。
答案 1 :(得分:0)
Laravel利用了webpack aka Laravel Mix,您也可以在其中复制文件。例如jQuery:
mix.copy('node_modules/jquery/dist/jquery.min.js', 'public/js/jquery.min.js');
然后在需要js / css的页面上,可以使用stacks,在其中可以
@push('js')
<script src="/js/Chart.bundle.min.js"></script>
@endpush
包含您的脚本。只需在开发中运行npm run dev
即可,如果准备上传,请运行npm run prod
。如果您使用版本控制,请不要忘记在公共css和js文件夹中添加Laravel Mix复制的文件。