www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁 > > 充電吧
[導(dǎo)讀]一:跨平臺APP開發(fā)目前采用html5+javascript+css 開發(fā)跨平臺應(yīng)用正成為一個熱點。html5開發(fā)網(wǎng)頁的骨架,CSS開發(fā)網(wǎng)頁皮膚,JS用于網(wǎng)頁互動。即僅需維護(hù)一套代碼,通過不同編譯方式

一:跨平臺APP開發(fā)



目前采用html5+javascript+css 開發(fā)跨平臺應(yīng)用正成為一個熱點。html5開發(fā)網(wǎng)頁的骨架,CSS開發(fā)網(wǎng)頁皮膚,JS用于網(wǎng)頁互動。即僅需維護(hù)一套代碼,通過不同編譯方式,適配PC端,ios移動端,android移動端。 在跨平臺框架中,meteor 以快速開發(fā)著稱。

二: Meteor 強大之處

1. 極速構(gòu)建

a. 幾條命令完成創(chuàng)建

b. 服務(wù)端客戶端一體(屏蔽通訊實現(xiàn))

c. 包含數(shù)據(jù)庫

2.Plugin插件 豐富

3.包容第三方(如react)

4.官方文檔完善

三:Meteor App 效果演示

meteor官網(wǎng)上有app 效果演示,如下面的截圖。功能強大。

四:用meteor 快速實現(xiàn) App

1. 創(chuàng)建

#curl https://install.meteor.com | /bin/sh 安裝meteor

#meteor create a1_hello

#cd a1_hello

#meteor 運行

更改a1_hello.html 保存 網(wǎng)頁會同步變化

瀏覽器訪問http://localhost:3000會看到:

//----源碼a1_hello.html 實現(xiàn)界面的顯示






Welcome to Meteor!


{{> hello}} //調(diào)用模板hello


//定義模板hello (模塊對外的顯示)


Youve pressed the button {{counter}} times.

//{{counter} 調(diào)用模板hello里的對象counter




//----源碼a1_hello.js 實現(xiàn)界面的互動

if (Meteor.isClient) { //檢測是否是客戶端,是則使用下面的代碼運行

// counter starts at 0

Session.setDefault('counter', 0); //設(shè)置counter的鍵值為0 --- Session 用于處理 鍵值對(key-value)

Template.hello.helpers({ // 實現(xiàn)模板hello的 helpers方法

counter: function () { // 把對象counter和函數(shù)function 關(guān)聯(lián)起來 (接口+實現(xiàn))

return Session.get('counter'); //返回counter的鍵值

}

});

Template.hello.events({ // 實現(xiàn)模板hello的事件 click button

'click button': function () { //click button 是事件,function是事件觸發(fā)的函數(shù) (接口+實現(xiàn))

// increment the counter when button is clicked

Session.set('counter', Session.get('counter') + 1); //使counter值加一

}

});

}

if (Meteor.isServer) { //檢測是否是服務(wù)端,是則使用下面的代碼運行

Meteor.startup(function () {

// code to run on server at startup

});

}

2. 列表顯示

//----源碼a1_hello.html 加入 列表顯示

List

{{> task}}

list 1

list 2

list 3

//----源碼 a1_hello.css 設(shè)置 顯示效果

body { //設(shè)置 html中自帶的body標(biāo)簽對象的 顯示屬性

font-family: sans-serif;

background-color: #315481;

background-image: linear-gradient(to bottom, #315481, #918e82 100%);

background-attachment: fixed;

position: absolute;

top: 0;

bottom: 0;

left: 0;

right: 0;

padding: 0;

margin: 0;

font-size: 14px;

}

.container { //設(shè)置自建的類名為container的對象的 顯示屬性

max-width: 600px;

margin: 0 auto;

min-height: 100%;

background: white;

}

header { //設(shè)置header對象的 顯示屬性

background: #d2edf4;

background-image: linear-gradient(to bottom, #d0edf5, #e1e5f0 100%);

padding: 20px 15px 15px 15px;

position: relative;

}

ul { //設(shè)置ul列表對象的 顯示屬性

margin: 0;

padding: 0;

background: white;

}

li { //設(shè)置li列表項對象的 顯示屬性

position: relative;

list-style: none;

padding: 15px;

border-bottom: #eee solid 1px;

}

3. 遠(yuǎn)程數(shù)據(jù)庫存儲

//----源碼a1_hello.html 使用表單輸入方式,添加列表內(nèi)容顯示











//----源碼a1_hello.js 表單輸入后能插入數(shù)據(jù)庫中(MongoDB Collection)


Tasks = new Mongo.Collection("tasks"); //創(chuàng)建數(shù)據(jù)庫連接(MongoDB collection) “tasks" 用于存儲列表內(nèi)容


if (Meteor.isClient) {


// This code only runs on the client


Template.body.helpers({


tasks: function () {


return Tasks.find({},{sort: {createdAt: -1}}); //查找數(shù)據(jù)庫MongoDB內(nèi)容并排序, 詳見API文檔 http://docs.meteor.com/#/basic/Mongo-Collection-find


}


});


Template.body.events({


"submit .new-task": function (event) { //實現(xiàn)對象new-task的submit事件的觸發(fā)函數(shù)


// Prevent default browser form submit


event.preventDefault();


// Get value from form element


var text = event.target.text.value;


// Insert a task into the collection


Tasks.insert({


text: text,


createdAt: new Date() // current time


});


// Clear form


event.target.text.value = "";


}


});


}


if (Meteor.isServer) {


Meteor.startup(function () {


// code to run on server at startup


});


}


五:豐富組件


搜索組件 https://atmospherejs.com


使用account組件


?#meteor add accounts-ui


#meteor add accounts-password



六:開源的樣例

#meteor create --example todos

#cd todos

#meteor

瀏覽器訪問http://localhost:3000會看到

#meteor create --example localmarket

#cd localmarket

#meteor


本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

摘要:Electron結(jié)合了Chromium、Node.js和用于調(diào)用操作系統(tǒng)本地功能的API,能夠使用純Javascript來創(chuàng)建桌面應(yīng)用,具有跨平臺、開發(fā)高效、模塊隔離等技術(shù)優(yōu)勢?,F(xiàn)分析了Electron的運行原理和...

關(guān)鍵字: 跨平臺 桌面應(yīng)用 Electron

摘 要:隨著云計算、物聯(lián)網(wǎng)、移動互聯(lián)網(wǎng)等新技術(shù)的發(fā)展和信息化背景下教育云的推動,云書包的應(yīng)用應(yīng)運而生。但是 傳統(tǒng)的云書包的建設(shè)通常都是指針對單一平臺進(jìn)行開發(fā)和建設(shè),不能滿足當(dāng)前跨平臺云資源共享的時代要求。針對該問題提 出...

關(guān)鍵字: 云計算 跨平臺 混合云終端中間件平臺 云書包

摘要:為了簡化鄰近異構(gòu)分布式通信網(wǎng)絡(luò)系統(tǒng)的組建并統(tǒng)一物聯(lián)網(wǎng)通信框架,采用高通公司最新推出的AllJoyn開源框架,進(jìn)行了Windows平臺間通過WiFi-Direct方式傳輸文件的組網(wǎng)實驗及VMware下Windows與...

關(guān)鍵字: AllJoyn 物聯(lián)網(wǎng) 跨平臺 近場無線通信 點對點數(shù)據(jù)傳輸

我們都知道,瀏覽一個網(wǎng)頁,有兩個很主要的“電腦”在共同運行,一臺是遠(yuǎn)程的,為你提供網(wǎng)頁數(shù)據(jù)的“服務(wù)器”,一臺是你正在使用的客戶端電腦。

關(guān)鍵字: javascript java

在各種網(wǎng)頁制作技術(shù)論壇中,常常有人詢問javascript與Java有什么區(qū)別,甚至有人誤認(rèn)為javascript就是Java。javascript與Java確實有一定的聯(lián)系,但它們并不像我們想象的那樣聯(lián)系緊密,甚至可以...

關(guān)鍵字: javascript java

摘 要:隨著科學(xué)技術(shù)的發(fā)展,智能家居生活也漸漸成為趨勢。然而,高成本、操作復(fù)雜的智能家居也僅僅在豪宅中應(yīng) 用。鑒于此種情況,我們有必要設(shè)計一種低成本、易操作的智能家居系統(tǒng)。將基于Wi-Fi的Web控制方法應(yīng)用于智能家居中...

關(guān)鍵字: 智能家居 Wi-Fi Web技術(shù) 跨平臺

nodejs和JavaScript的簡單比較

關(guān)鍵字: nodejs javascript

js必備的內(nèi)置對象,內(nèi)置對象是ECMAscript標(biāo)準(zhǔn)以及定義好的,由瀏覽器廠商已經(jīng)實現(xiàn)的標(biāo)準(zhǔn)對象 內(nèi)置對象中封裝了專門的數(shù)據(jù)和操作數(shù)據(jù)常用的API JavaScript中內(nèi)置對象列表有

關(guān)鍵字: javascript 程序

3月16日,微軟子公司、全世界最大的代碼存放平臺和開源社區(qū)Github表示,已同意收購代碼分發(fā)初創(chuàng)公司NPM。微軟高管表示,NPM目前擁有130萬個軟件包,每月支持750萬次下載。微軟希望永遠(yuǎn)讓NPM對開發(fā)者保持開源和免...

關(guān)鍵字: javascript 微軟

this是Javascript語言的一個關(guān)鍵字。 它代表函數(shù)運行時,自動生成的一個內(nèi)部對象,只能在函數(shù)內(nèi)部使用。比如,   function test(){     this.x = 1;   }

關(guān)鍵字: javascript this
關(guān)閉