2016-11-09 10 views
0

CodeIgniterを使った私の最初のプロジェクトで、それはそう簡単ではありません。CodeIgniterを使ってjsとcssをインポートする最も良い方法は何ですか?

私は別のページに異なるJSSとのCSSをインポートする必要があり、私はこだわっています。

まず第一に、私は私が

<?php 
    defined('BASEPATH') OR exit('No direct script access allowed'); 

    class Fileload { 

      public function loadjs($filename) 
      { 
       echo '<script language="javascript" type="text/javascript" src="'.$filename.'"></script>'; 
      } 
      public function loadcss($filename) 
      { 
       echo '<link rel="stylesheet" type="text/css" href="'.$filename.'" >'; 
      } 
    } 
    ?> 

のような単純なクラスを作って、私のコントローラで、私は

<?php 
defined('BASEPATH') OR exit('No direct script access allowed'); 

class Main extends CI_Controller { 

    /** 
    * Index Page for this controller. 
    * 
    * Maps to the following URL 
    *  http://example.com/index.php/welcome 
    * - or - 
    *  http://example.com/index.php/welcome/index 
    * - or - 
    * Since this controller is set as the default controller in 
    * config/routes.php, it's displayed at http://example.com/ 
    * 
    * So any other public methods not prefixed with an underscore will 
    * map to /index.php/welcome/<method_name> 
    * @see https://codeigniter.com/user_guide/general/urls.html 
    */ 
    public function index() 
    { 
     $this->load->library('fileload'); 

     $this->load->view('head'); 
     $this->load->view('mainpage'); 
     $this->fileload->loadjs('//cdn.jsdelivr.net/jquery.slick/1.6.0/slick.min.js'); 
     $this->load->view('tail'); 
    } 
} 
のようにそれを使用するハードコーディングエコーはそれを行うためのCIの方法ではないことを見てきました

しかし、 'tail'の右下にあるはずの滑らかなライブラリは、head>タグの内側にあります。これは内側のview( 'head')です。

コントローラのメソッドは、私はそれを書き留めてきた順序で実行されていないようです。スクリプトファイルを最初にエコーしたはずです。

誰がこのCodeIgniterのコントローラがどのように動作するかを説明することができます?

+0

コントローラ用ビットビューの汚いけど仕方簡素それであなたの ''

0

あなたができるもう一つは、CodeIgniterのにブレード・テンプレートパーサーを実装しています。 Bladeはセクションを作成できるようになり、ページ固有のスクリプトを組み込むのがはるかに簡単で洗練されたものになります。 https://github.com/PhiloNL/Laravel-Bladeを入手できます。あなたはこれでも作曲家を使用しなければならないことを心に留めておいてください。

関連する問題