## 嵌套調用
- 模塊與模塊之間的相互調用(相對路徑)
- 項目和項目之間的相互調用(絕對路徑)
- 也可以寫一個通用模塊就可以大面積使用,減少代碼維護成本
- 或許可以實現一些神奇的效果
#### 示例代碼
設置文件/html/www/demo/tpl/tpl.blade.php內容如下
~~~
{!! tpl('a') !!}
{!! tpl('a/aa', ['get' => ['name' => 'GET參數來自頂部模塊'], 'post' => ['name' => 'POST參數來自頂部模塊']]) !!}
{!! tpl('c') !!}
{!! tpl('e') !!}
{!! tpl('/www/demo/tpl/c') !!}
~~~
設置文件/html/www/demo/tpl/tpl.css內容如下
~~~
_CLASS_{
width: 500px;
}
~~~
設置文件/html/www/demo/tpl/a/tpl.blade.php內容如下
~~~
{!! tpl('aa', ['get' => ['name' => 'GET參數來自a模塊'], 'post' => ['name' => 'POST參數來自a模塊']]) !!}
~~~
設置文件/html/www/demo/tpl/a/tpl.css內容如下
~~~
_CLASS_{
color:#F00;
}
~~~
設置文件/html/www/demo/tpl/a/aa/tpl.blade.php內容如下
~~~
~~~
設置文件/html/www/demo/tpl/a/aa/tpl.css內容如下
~~~
_CLASS_{
background-color: #FEE;
}
~~~
設置文件/html/www/demo/tpl/c/tpl.blade.php內容如下
~~~
{!! tpl('../a/aa', ['get' => ['name' => 'GET參數來自c模塊'], 'post' => ['name' => 'POST參數來自c模塊']]) !!}
~~~
設置文件/html/www/demo/tpl/c/tpl.css內容如下
~~~
_CLASS_{
color:#08F;
}
~~~
設置文件/html/www/demo/tpl/e/tpl.blade.php內容如下
~~~
{!! tpl('ee', ['get' => ['name' => 'GET參數來自e模塊'], 'post' => ['name' => 'POST參數來自e模塊']]) !!}
~~~
設置文件/html/www/demo/tpl/e/tpl.css內容如下
~~~
_CLASS_{
color:#080;
}
~~~
設置文件/html/www/demo/tpl/e/ee/_init.php內容如下
~~~
return function (){
$get_name = $_GET['name'];
$post_name = $_POST['name'];
echo "
};
~~~
設置文件/html/www/demo/tpl/e/ee/tpl.blade.php內容如下
~~~
~~~
設置文件/html/www/demo/tpl/e/ee/tpl.css內容如下
~~~
_CLASS_{
background-color: #CCF;
}
~~~
打開網址[http://demo.tphp.com/tpl](http://demo.tphp.com/tpl)獲得如下效果

生成源代碼

生成的CSS

生成的JS(未設置tpl.js,所以沒有js代碼)
這是總頁面路徑,當然所有的子頁面同樣可以單獨訪問,比如:
打開網址[http://demo.tphp.com/tpl/c](http://demo.tphp.com/tpl/c)獲得如下效果

- 嵌套的頁面有點多,頁面嵌套、CSS嵌套放到一起就會有點繞,需耐心體會
- JS嵌套也是一樣,這里就不舉例了
- 雖然調用的有點多,但邏輯清晰,很容易控制模塊與模塊之間的關系,模塊之間的class自動指向,無需記住樣式名稱,所以這里SCSS就發揮了極大的作用,只要寫一次_CLASS_就能夠實現自動指向,SCSS寫法如下:
~~~
_CLASS_{
.child_1{
...
}
.child_2{
...
}
background-color: #CCF;
}
~~~
將轉換為:
~~~
_CLASS_{
background-color: #CCF;
}
_CLASS_ .child_1{
...
}
_CLASS_ .child_2{
...
}
~~~