从数据库加载数据:Template7 和 Framework7
Load data from database: Template7 and Framework7
我正在使用 Template7 和 Framework7 构建一个使用 PhoneGap 的 iOS 应用程序。我正在经历 tutorial
我的-app.js 文件
// Initialize your app
var myApp = new Framework7({
init: false
});
// Export selectors engine
var $$ = Dom7;
// Add view
var mainView = myApp.addView('.view-main', {
// Because we use fixed-through navbar we can enable dynamic navbar
dynamicNavbar: true
});
myApp.onPageInit('index', function (page) {
document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady() {}
});
myApp.init();
// Callbacks to run specific code for specific pages, for example for About page:
myApp.onPageInit('about', function (page) {
console.log('Baga');
// run createContentPage func after link was clicked
$$('.create-page').on('click', function () {
createContentPage();
});
});
// Generate dynamic page
var dynamicPageIndex = 0;
function createContentPage() {
mainView.router.loadContent(
'<!-- Top Navbar-->' +
'<div class="navbar">' +
' <div class="navbar-inner">' +
' <div class="left"><a href="#" class="back link"><i class="icon icon-back"></i><span>Back</span></a></div>' +
' <div class="center sliding">Dynamic Page ' + (++dynamicPageIndex) + '</div>' +
' </div>' +
'</div>' +
'<div class="pages">' +
' <!-- Page, data-page contains page name-->' +
' <div data-page="dynamic-pages" class="page">' +
' <!-- Scrollable page content-->' +
' <div class="page-content">' +
' <div class="content-block">' +
' <div class="content-block-inner">' +
' <p>Here is a dynamic page created on ' + new Date() + ' !</p>' +
' <p>Go <a href="#" class="back">back</a> or go to <a href="services.html">Services</a>.</p>' +
' </div>' +
' </div>' +
' </div>' +
' </div>' +
'</div>'
);
return;
}
如何在
中使用 template7data
myApp.onPageInit('index', function (page) {
document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady() {}
});
并从数据库或某些 AJAX 查询中加载数据。我想使用该数据显示 index.html 文件中的内容。
您需要有一个模板。例如:
<script id="template" type="text/template7">
<p>Hello, my name is {{firstName}} {{lastName}}</p>
</script>
用Template7编译模板:
var template = $$('#template').html();
var compiledTemplate = Template7.compile(template);
从服务器获取您的 JSON 数据:
$$.getJSON('link/to/your/json', {}, function (data) {
var context = data;
}
现在通过传递所需的上下文来呈现编译后的模板
var html = compiledTemplate(context);
现在,html
变量将包含您需要的 html。例如:
<p>Hello, my name is John Doe</p>
Template7 是移动优先的 JavaScript 模板引擎,具有类似 Handlebars 的语法。它被用作 Framework7 中的默认模板引擎
它超轻量级(压缩后大约 1KB)并且速度极快(比移动版 Safari 中的 Handlebars 快 2-3 倍)。
https://jsfiddle.net/aslamshaikh14/jexs43va/
Template7
我正在使用 Template7 和 Framework7 构建一个使用 PhoneGap 的 iOS 应用程序。我正在经历 tutorial
我的-app.js 文件
// Initialize your app
var myApp = new Framework7({
init: false
});
// Export selectors engine
var $$ = Dom7;
// Add view
var mainView = myApp.addView('.view-main', {
// Because we use fixed-through navbar we can enable dynamic navbar
dynamicNavbar: true
});
myApp.onPageInit('index', function (page) {
document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady() {}
});
myApp.init();
// Callbacks to run specific code for specific pages, for example for About page:
myApp.onPageInit('about', function (page) {
console.log('Baga');
// run createContentPage func after link was clicked
$$('.create-page').on('click', function () {
createContentPage();
});
});
// Generate dynamic page
var dynamicPageIndex = 0;
function createContentPage() {
mainView.router.loadContent(
'<!-- Top Navbar-->' +
'<div class="navbar">' +
' <div class="navbar-inner">' +
' <div class="left"><a href="#" class="back link"><i class="icon icon-back"></i><span>Back</span></a></div>' +
' <div class="center sliding">Dynamic Page ' + (++dynamicPageIndex) + '</div>' +
' </div>' +
'</div>' +
'<div class="pages">' +
' <!-- Page, data-page contains page name-->' +
' <div data-page="dynamic-pages" class="page">' +
' <!-- Scrollable page content-->' +
' <div class="page-content">' +
' <div class="content-block">' +
' <div class="content-block-inner">' +
' <p>Here is a dynamic page created on ' + new Date() + ' !</p>' +
' <p>Go <a href="#" class="back">back</a> or go to <a href="services.html">Services</a>.</p>' +
' </div>' +
' </div>' +
' </div>' +
' </div>' +
'</div>'
);
return;
}
如何在
中使用 template7datamyApp.onPageInit('index', function (page) {
document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady() {}
});
并从数据库或某些 AJAX 查询中加载数据。我想使用该数据显示 index.html 文件中的内容。
您需要有一个模板。例如:
<script id="template" type="text/template7"> <p>Hello, my name is {{firstName}} {{lastName}}</p> </script>
用Template7编译模板:
var template = $$('#template').html(); var compiledTemplate = Template7.compile(template);
从服务器获取您的 JSON 数据:
$$.getJSON('link/to/your/json', {}, function (data) { var context = data; }
现在通过传递所需的上下文来呈现编译后的模板
var html = compiledTemplate(context);
现在,html
变量将包含您需要的 html。例如:
<p>Hello, my name is John Doe</p>
Template7 是移动优先的 JavaScript 模板引擎,具有类似 Handlebars 的语法。它被用作 Framework7 中的默认模板引擎
它超轻量级(压缩后大约 1KB)并且速度极快(比移动版 Safari 中的 Handlebars 快 2-3 倍)。
https://jsfiddle.net/aslamshaikh14/jexs43va/
Template7