我有两个视图,一个用于菜单,另一个用于页面内容。
- 标题
- 购物车 在标题cartpopup中
是一个包含购物车数据的数组键,只有当用户单击购物车图标时才会弹出该数据,但是在此处,当页面呈现时,此cartpopup内容会在生成html之前打印出来。
此代码在页面上生成html之前打印:
<li>
<a href="#" class="image"><img src="1550847861_Hydrangeas.jpg class="cart-thumb" alt=""></a>
<div class="cart-item-desc">
<h6><a href="#">Item1</a></h6>
<p>1x - <span class="price">475</span></p>
</div>
<span class="dropdown-product-remove"><i class="icon-cross"></i></span>
</li>
然后生成html和正文内容
header.php
<div class="cart">
<a href="#" id="header-cart-btn" target="_blank"><i class="ti-bag"></i><span class="cart_quantity"><?php echo $tot_cart;?></span></a>
<ul class="cart-list">
<?php echo $cartpopup; ?>
</ul>
</div>
控制器:
public function index() {
$data['output_cart']= $this->show_cart();
$tot_cart=$this->cart->total_items();
$data_menu = $this->category_menu();
$output_cart_popup= $this->load_cart_header_pop();
$this->load->view('header',['menudata'=>$data_menu,'tot_cart'=>$tot_cart,'cartpopup'=>$output_cart_popup]);
$this->load->view('cart',$data);
}
屏幕截图:
答案 0 :(得分:0)
您仅需将第三个参数用作“ true”,如:
$subView = $this->load->view(YOUR_VIEW, YOUR_DATA_ARRAY, true);
$params = array(
YOUR_DATA_ARRAY,
'subView' => $subView
);
$this->load->view(YOUR_VIEW, YOUR_DATA, true);
这样,您将只将视图预加载到内存中,然后只需将params中的视图传递给主视图,最后在主视图中回显它即可,如:
echo $subView;