requirejs实现单页面跳转、动态渲染页面文本内容

本文介绍使用RequireJS和Bootstrap实现简单页面登录与跳转的方法。通过定义BaseController,设置模板和模型,完成视图渲染。文章包含具体代码示例及git仓库链接。

小颖之前其实有分享一篇文章:require.js+bootstrap实现简单的页面登录和页面跳转

配置什么的其实都是一样的,没多大修改,还是惯例先来看看页面效果:

修改文件:

BaseController

define(function () {
    var setTemplate = function (template) {
        this.template = template;
    };
    var setModel = function (model) {
        this.model = model;
    };
    var render = function (container) {
        // 获取模板
        var templateStr = this.template;
        var resourceObj = this.model;
        var regS = null;
        // 替换模板
        for (var key in resourceObj) {
            regS = new RegExp("\\{" + key + "\\}", "g");
            templateStr = templateStr.replace(regS, resourceObj[key]);
        }
        // 加载页面
        container.innerHTML = templateStr;
    };
    return {
        setTemplate: setTemplate,
        setModel: setModel,
        render: render
    }
});

home.js

define(function (require) {
    var Base = require('app/Base'),
        controller = require('../BaseController'),
        template = require('text!./home.html'),
        model = {
            key1: 'iScroll页面-----可点',
            key2: '测试1',
            key3: '测试2'
        };
    /**
     * 对外暴露函数,用于视图加载
     */
    var load = function () {
        render();
        bind();
        run();
    };

    // setModel
    /**
     * 视图渲染
     */
    function render() {
        controller.setTemplate(template);
        controller.setModel(model);
        controller.render(Base.getViewContainer());
    }

    /**
     * 事件绑定
     */
    function bind() {
        $('#goIScroll').click(function () {
            location.hash = "iScrollPage";
            document.title = 'iScroll页面';
        });
    }

    /**
     * 除事件绑定
     */

    function run() {
    }

    return {
        load: load
    };
});

git地址:https://gitee.com/lucy1028/requireDemo

 

转载于:https://www.cnblogs.com/yingzi1028/p/9779287.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值