我一直在使用Codeigniter,以便习惯于模型 - 视图 - 控制器架构,并尝试加快制作和实施网站的过程。
我一直看到对“部分视图”的引用,但找不到该术语的定义。
有谁能告诉我部分视图是什么,以及它在哪里使用?
答案 0 :(得分:5)
部分视图只是您可以包含在父视图中的子视图。我们来看一个常见的例子:
// Controller:
$data['myvar'] = array('element1', 'element2', 'element3');
$this->load->view('myview', $data);
// Myview:
<ul>
foreach ($myvar as $var) {
$this->load->view('partialview', array('var', $var));
}
</ul>
// Partialview:
<li><?= $var ?></li>
这对于根据列表重复内容很有用。 请注意,视图和部分视图之间没有任何区别,它只是您定义术语的方式。
答案 1 :(得分:2)
描述“局部视图”的最佳方法是将其视为模板,它会显示一大块html,并将模型数据传递给它。
在哪里使用的好例子就是你打算一遍又一遍地显示相同的html,比如菜单或页眉,甚至更好地使用它们来显示使用ajax请求的内容。
基本上你在控制器上调用一个动作,它从jQuery中返回部分视图,然后将返回的标记放入select或div标签中。这是从我的博客easy ajax with aspnet mvc and jquery做到这一点的一个例子,是的我知道asp.net mvc不是php和codeigniter,但是主体是相同的。