Heim > Fragen und Antworten > Hauptteil
Die Datei bootstrap.js von laravel5.3 enthält die folgenden Zeilen:
window._ = require('lodash');
window.$ = window.jQuery = require('jquery');
require('bootstrap');
window.Vue = require('vue');
require('vue-resource');
Frage:
1. Was bedeutet window._
和window.$ = window.jQuery
,window.Vue
? Muss ich diese Zeile jedes Mal schreiben, wenn ich ein Paket vorstelle?
2. Führt require() das gesamte Paket oder nur die js-Datei ein? Aus den Klammern require('') ist nicht ersichtlich, dass der Ordnername und der js-Dateiname identisch sind.
伊谢尔伦2017-05-16 16:51:44
laravel 5.3的app.js/boostrap.js 都不是能通过<script src='...'></script>
访问的
因为它这个是基于nodeJS + gulp + webpack
的一套东西,
打开根目录下的 gulpfile.js
可以看到 elixir的函数
,这个函数是用来打开js、css的
如何使用:
安装nodejs
打开命令行
cd /your/root/dir/
npm install -g gulp
(速度很慢,可以搜索安装:cnpm)
npm install
gulp
这样会在你的public/css public/js
下生成app.js app.css
这才是你能 <script src=""></script>
的东西
你的问题:
window.$ = window.jQuery = require('jquery');
指将jquery
导入进来,并赋值给$
变量
require
是 nodeJS
的语法,读取的是 node_modules/
下的某个文件夹的index.js
(具体要看package.json
的指向)
打开node_modules/
可以看到很多的库
打开package.json
可以看到所需的node库
打开gulpfile.js
可以添加需要webpack/sass/less
的文件