1,566
社区成员
爱智应用开发基础共分为三个模块,依次是应用构建、Web-SDK集成、使用JSRE开发。学习后可完成爱智应用的基础开发工作。
本次讲解模块一:应用构建
本章将以 Vue 为代码示例,介绍如何构建一个可以前后端交互的爱智应用。
开发者在构建应用时可使用任意的 Web 开发框架进行前后端分离开发。前后端分离开发是指将前端页面和后端服务拆开来单独进行开发,全部完成后再联调打包,实现高内聚低耦合,提升研发效率。
Vue 是常用的前端框架之一,阅读本章可了解如下技术:
参考 创建应用 章节,创建一个爱智应用,创建好的目录结构如下:
├── assets 资源文件夹
├── routers 路由信息
├── public 静态页面文件
├── views 模板页面
├── eslintrc.json eslint 配置文件
├── edgeros.json edgeros 应用配置文件
├── main.js 程序入口
├── jsconfig.json 代码补全配置文件
└── package.json 依赖包的管理
console.log(sys.appinfo().ports)
console.log(sys.appinfo().appid)
console.log(sys.appinfo().port)
let times = 0
app.get('/times', function(req, res) {
res.json({ times: times++ })
})
/* Event loop */
require('iosched').forever();
注意: 请确保 require('iosched').forever();
字段处于文件末尾,可参考 IOSched : I/O events scheduler。
2.添加完成后,这段代码会返回该接口被调用的总次数,三个 console.log 语句会在插件打印该应用启动时的日志,包含以下重要信息:
ports - https 端口号
appid - 应用 ID
port - http 端口号
参考 部署应用 章节,将应用部署至爱智桌面。
1.部署完成后,点击 EDGEROS>设备管理>打开控制台输出按钮,用于获取爱智应用的启动信息。
2.打开浏览器输入 https://192.168.128.1 进入爱智桌面,点击启动刚才安装部署的爱智应用。
3.查看控制台,爱智应用启动后将输出以下启动信息,应用启动成功。
vue create demo-app
2. 在 Visual Studio Code 中打开该工程,修改 src>components>HelloWorld.vue 文件如下:
<template>
<div class="hello">
<h1>{{ msg }}</h1>
<h2>Say hello {{ reply.times }} times</h2>
<button @click="sayHello">Hello EdgerOS</button>
</div>
</template>
<script>
export default {
name: 'HelloWorld',
props: {
msg: String
},
data() {
return {
reply: {}
}
},
methods: {
async sayHello() {
try {
const response = await fetch('/times')
this.reply = await response.json();
} catch (error) {
console.error('error is: ', error)
}
}
}
}
</script>
3.修改完成后,这段代码将在界面上增加一个可点击的按钮和一个文本展示区域,文本展示区域的内容由步骤 2 中的 REST 调用结果填充。
以上步骤分别创建了前端和后端应用,需要启用 webpack 的 proxy 机制将分离的前后端代码进行连接。对 Vue 来说,需要配置 vue.config.js 文件如下:
module.exports = {
assetsDir: 'static',
productionSourceMap: false,
devServer: {
disableHostCheck: true,
proxy: {
'/': {
target: 'https://192.168.128.1:7374',
changeOrigin: true,
secure: false
}
}
}
};
注意:
npm run serve
2. 启动成功后将展示以下输出:
3. 通常会有多个 URL 可供使用,需要选择非 localhost 的一项, 复制 http://192.168.128.100:8080 到浏览器地址栏,进入以下界面:
4. 点击 Hello EdgerOS 按钮,UI 界面将显示按钮被点击的次数,应用创建成功。
npm run build
,构建前端应用。