Как предупредить значение после инициализации представления с помощью requirejs и kendo mobile

0

Я использую пример приложения с kendo mobile и требую js. Я пытаюсь перейти к новому представлению из другого представления. Как только я перейду к просмотру, я должен предупредить или распечатать значение. Как проверить, когда я нахожусь в представлении. Я использую некоторый пример кода из музыкального магазина кендо. Я не могу напечатать что-нибудь в этом представлении. Найдите приведенный ниже код.

main.js

var app;

require.config({
paths: {
    jQuery: "../kendo/js/jquery.min",
    kendo: "../kendo/js/kendo.mobile.min"       
},
shim: {
    jQuery: {
        exports: "jQuery"
    },
    kendo: {
        exports: "kendo"
    }
}

});

require(["jQuery", "app"], function($, application) {
$(function() {
    app = application
    application.init();
});

});

app.js

define(["jQuery", "kendo", "about-view", "account-view", "utils", "home-view"], function($,
            kendo, aboutView, accountView, utils, homeView) {

        var _onError = function(error, url, line) {

        };

        var init = function() {
            window.onerror = _onError;

            var kendoApp = new kendo.mobile.Application(document.body, {
                        transition : "fade",
                        initial : "login-view",
                        loading : '<h1 class="loading-message">Loading...</h1>'
                    });
            utils.init(kendoApp);
        };

        return {
            aboutView : aboutView,
            accountView : accountView,
            utils : utils,
            homeView : homeView,
            init : init
        };
    });

Ниже приведен новый вид, который я создаю, чтобы предупреждать значение, когда я перехожу к этому представлению.

define(["jQuery", "kendo", "utils"], function($, kendo, utils) {

return {
    init: function(){
        console.log("init home view");
    },
};

});

У моего index.html уже есть это представление, я могу видеть представление, как только я нахожусь, но я не могу распечатать или предупредить любое значение, когда я перехожу к этому представлению.

<div data-role="view" id="home-view" data-layout="home-layout" data-title="Home" data-model="app.homeView.viewModel">
        <p>
            Test para1
        </p>
        <p>Test para2
        </p>
    </div>
    <!-- <script src="/cordova.js"></script> -->
    <!-- RequireJS is a JavaScript file and module loader(Below main.js file is set to load) -->
    <script data-main="scripts/main.js" src="/require.js"></script>
Теги:
kendo-ui
requirejs
kendo-mobile

2 ответа

1

Вы можете добавить дополнительные атрибуты в свой div для привязки событий жизненного цикла следующим образом:

<div data-role="view" data-layout="home-layout" 
   id="home-view" data-title="Home" 
   data-init="app.homeView.init"
   data-model="app.homeView.viewModel">

Существуют и другие события, которые могут быть связаны (например, показать, скрыть) - полный список содержится в документации Mobile View

0

Если вы хотите показывать предупреждение, когда вы вводите это представление, вы можете использовать data-show, например

<div data-role="view" id="home-view" data-model="app.homeView.viewModel" data-show="app.homeView.init">

Ещё вопросы

Сообщество Overcoder
Наверх
Меню