后台采用.net MVC框架,前端采用requirejs。整个系统页面布局基本不变,每个页面只改变Main_Content部分。

模板页cshtml:

<!DOCTYPE html>
<!--公用的模版页面_layout.cshtml-->
<head>
<meta charset="utf-8">
<title>@ViewBag.Title</title>
<link rel="shortcut icon" href="~/favicon.ico" type="image/x-icon">
<!--引入公共样式,需要在BundleConfig.cs 文件里定义样式集-->
@Styles.Render("~/css/common")
<!--子页面中@section cssImport部分(<link>标签内容)将要显示的位置-->
@RenderSection("cssImport", required: false)
<!-- 同步引入requirejs -->
<script src="~/js/require.js"> </script>
<script src="~/js/json2.js"></script>
</head>
<body>
<!--—子页面内容中除去@section name部分后将要显示的区域-->
<div class="main_content">@RenderBody()</div>
<!-- 公用部分js,单独封装成一个app模块,在子页面的js依赖中引入 -->
<script type="text/javascript">
//...
</script>
<!--子页面中@section jsImport部分(<script>标签内容)将要显示的位置,尽量在文档结尾处-->
@RenderSection("jsImport", required: false)
</body>
</html>

子页面cshtml:

@{
ViewBag.Title = "子页面标题";
}
<!--当前子页面用到的样式,会并到模版页面@RenderSection('cssImport')注解处-->
@section CssImport{
<link href="~/css/vender/jquery.jscrollpane.css" rel="stylesheet" />
<link href="~/css/main/subPage.css" rel="stylesheet" />
} <!-- 子页面html标签部分 -->
<form name="CONDITION_FORM" id="js-form" action="" method="post" style="display:none">
<input type="text" name="queryStr" id="queryStr" />
</form>
<div class="selectModel">...</div> <!-- 当前子页面js逻辑,会并到模版页面@RenderSection('jsImport')注解处 -->
@section jsImport{
<script>
require('~/js/config',function(){
require(['currentPage'], function (module) {
module.init();
});
})
</script>
}

子页面js:

//子页面业务模块,app为公用部分模块
define(['app','components/jtable/jtable'], function (app, jtable) {
'use strict';
var module = {
options: {},
init: function (options) {
// 合并参数
var self = this;
_.map(options, function (item, key) { self.options[key] = item; });
//业务逻辑
this.bindEvents();
},
bindEvents: function () {
//...
}
};
return module;
});

pms前端结构的更多相关文章

  1. 使用float设置经典的网站前端结构(深入探讨)

    .要是DIV的子元素宽度大于它自己的宽度,不管子元素有没有脱离文档流,子元素会在横向向右溢出. 关于高度:1.要是DIV的高度没有设定,其高度受“没有脱离文档流”的子元素影响.以下是DIV宽度为0的情 ...

  2. 使用position设置经典的网站前端结构

    能脱离文档流的设置: float:left/right position:absolute; 绝对定位 position:fixed; 固定定位 //搞清楚position的属性值的意思就容易明白 使 ...

  3. 使用float设置经典的网站前端结构

    float浮动是能使得标签脱离文档流,此处脱离文档流,是指此便签后面的,没有脱离文档流的标签将此标签当作透明,按正常来布局. float脱离文档流,是受到父级范围限制的,在父级范围内脱离文档流,脱离文 ...

  4. 用“MEAN”技术栈开发web应用(一)AngularJs前端架构

    前言 不知何时突然冒出“MEAN技术栈”这个新词,听起来很牛逼的样子,其实就是我们已经熟悉了的近两年在前端比较流行的技术,mongodb.express.angularjs.nodejs,由于这几项技 ...

  5. 扯一扯前端css的整体架构设计:(2)base基础类的那些事儿

    周一下午在实验室写了第一篇博文,有几个人捧场,那咱就得接着下去啊.然后我觉得现在写的内容更多的偏向于谈一下我对于前端css架构的理解和前端经验的一个小总结,所以就把标题里原来的[项目总结]给删掉了.但 ...

  6. 前端CSS兼容的一些思路

    半夜睡不着觉,起来写第一博. 近段时间,公司要给一个网站产品增加一个换色功能,安排我负责该事项. 之前参与过一些定制项目,是基于该产品的二次开发,说实话里面的前端结构很混乱.所以第一步就是将html前 ...

  7. 基于React的PC网站前端架构分析

    代码地址如下:http://www.demodashi.com/demo/12252.html 本文适合对象 有过一定开发经验的初级前端工程师: 有过完整项目的开发经验,不论大小: 对node有所了解 ...

  8. 自学前端开发,现在手握大厂offer,我的故事还在继续

    简要背景 我是一个非科班出身的程序员,而且是连续跨专业者,用一句话总结就是:16 届本科学完物流,保送研究生转交通,自学前端开发的休学创业者. 17 年休学创业,正式开始学习前端,离开创业公司后,我又 ...

  9. AnguarJS测试的实施步骤整理

    最近开发用到了AngularJS,据说目前大型系统都用这个作为前端.最近参与的一个项目,web部分重度使用了AngularJS,整个前端架构有组织有纪律.所谓的有纪律就是说,有比较完善的测试用例,用上 ...

随机推荐

  1. iOS 数据持久化-- FMDB

    一.简介 1.什么是FMDB FMDB是iOS平台的SQLite数据库框架 FMDB以OC的方式封装了SQLite的C语言API 2.FMDB的优点 使用起来更加面向对象,省去了很多麻烦.冗余的C语言 ...

  2. springbootf访问静态文件资源

    springboot目录结构: 网友说在springboot的配置文件中加 现在访问static目录下的jquery文件 用jquery在页面做一个弹窗 启动服务看页面效果 页面没有出现弹窗 ,连jq ...

  3. 用SpringSecurity从零搭建pc项目-02

    参照这一篇文章吧,比如你不需要做的那么通用,取其中一部分代码即可. https://www.cnblogs.com/lihaoyang/p/8491792.html

  4. ASP.NET Core 1.0 中 EntityFramework 与 PostgreSQL 的使用

    https://docs.efproject.net/en/latest/providers/npgsql/index.html 前面在CentOS6.7环境下配置好了PostgreSQL, 就顺便试 ...

  5. 详解C#特性和反射(四)

    本篇内容是特性和反射的最后一篇内容,前面三篇文章: 详解C#特性和反射(一) 详解C#特性和反射(二) 详解C#特性和反射(三) 一.晚期绑定(Late Binding)是一种在编译时不知道类型及其成 ...

  6. spark work目录处理 And HDFS空间都去哪了?

    1.说在前面 过完今天就放假回家了(挺高兴),于是提前检查了下个服务集群的状况,一切良好.正在我想着回家的时候突然发现手机上一连串的告警,spark任务执行失败,spark空间不足.我的心突然颤抖了一 ...

  7. intellij idea 怎么全局搜索--转

    https://jingyan.baidu.com/article/29697b9163ac7dab20de3cbf.html intellij idea是一款智能,功能强大的ide,对比eclips ...

  8. eclipse下查看java源码设置

    myway: 1.选择一函数,按住ctrl,显示open declaration(或按F3); 2.点进去: 如果未配置,点 source attachment configuration -- ex ...

  9. 获取当前iframe动态加载文档的href

    Insus.NET想实现一个功能,一个旧的站点A,它有两个网页logon.aspx和Default.aspx(登录成功能访问).由于某些原因,需另建一个新站点B,这个新站点B也有两个网页B_Index ...

  10. Http请求帮助类

    using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Net ...