![](/img/trans.png)
[英]composer autoload provider with extra not working in laravel package?
[英]how to autoload jQuery package to Laravel with Composer
我剛剛開始使用Laravel / Composer。 我想用jquery加載composer autoloader。
我的composer.json
文件如下所示:
{
"name": "laravel/laravel",
"description": "The Laravel Framework.",
"keywords": ["framework", "laravel"],
"license": "MIT",
"require": {
"laravel/framework": "4.1.*",
"frameworks/jquery": "1.*"
},
"autoload": {
"classmap": [
"app/commands",
"app/controllers",
"app/models",
"app/database/migrations",
"app/database/seeds",
"app/tests/TestCase.php"
],
"files":[
"vendor/frameworks/jquery/jquery.min.js"
]
},
"scripts": {
"post-install-cmd": [
"php artisan clear-compiled",
"php artisan optimize"
],
"post-update-cmd": [
"php artisan clear-compiled",
"php artisan optimize"
],
"post-create-project-cmd": [
"php artisan key:generate"
]
},
"config": {
"preferred-install": "dist"
},
"minimum-stability": "stable"
}
注意我已經將jquery添加到require列表並將jquery.min.js添加到autoload / files。 它加載,但作為純文本,而不是作為js文件。
這一定是我正在做的蠢事,但我無法弄清楚。 如何正確加載文件?
你不能用composer自動加載jQuery,因為這意味着你想用PHP腳本引擎在服務器上執行Javascript。 這永遠不會奏效。
你想要做的是在你用PHP創建的頁面中包含jQuery。 可能將其作為加載它的javascript標記包含在內。 這意味着您必須配置一種方法,使服務器上的jquery.min.js
文件可用於HTTP訪問。
frameworks/jquery
包沒有關於如何執行此操作的任何建議。 它只是抓取文件並將其添加到供應商文件夾。 如果您希望它可供瀏覽器使用,您可以將其復制到文檔根目錄中,設置一個腳本來讀取文件並將其發送到瀏覽器,為其設置符號鏈接,或者為該供應商目錄添加別名。 所有這些解決方案都不是那么好,但如果被問到我更喜歡復制步驟。
有一個components/jquery
包使用另一個包來輕松配置刪除文件的位置。 你應該調查一下,閱讀README。 它看起來更好維護,並且基本上會執行復制步驟。
我可能錯了,但是composer用於自動加載php文件。 它允許你打電話給包括它的東西。 這一切都在服務器端。 我認為你不能做你想做的事。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.