发表于: 2017-06-25 22:06:02

1 913


今天完成的事:查看小程序的API,app.json 是对整个小程序的全局配置,可以在这个文件中配置小程序是由哪些页面组成,配置小程序的窗口为背景色,配置导航条样式,配置默认标题。注意该文件不可添加任何注释。

{
"pages":[
"pages/index/index",
   "pages/logs/logs"
],
   "window":{
"backgroundTextStyle":"light",
       "navigationBarBackgroundColor": "#fff",
       "navigationBarTitleText": "WeChat",
       "navigationBarTextStyle":"black"
}
}

这类似于我们自己设置body,html之类的全局css属性,然后pages对应的其实很类似于angular的路由ui,其实对应起来看就非常快。


app.wxss 是整个小程序的公共样式表。可以在页面组件的 class 属性上直接使用 app.wxss 中声明的样式规则,

比如:

/**app.wxss**/
.container {
height: 100%;
   display: flex;
   flex-direction: column;
   align-items: center;
   justify-content: space-between;
   padding: 200rpx 0;
   box-sizing: border-box;
}

wxss的样式按照CSS样式标准去执行。


框架提供了自己的视图层描述语言 WXML 和 WXSS,以及基于 JavaScript 的逻辑层框架,并在视图层与逻辑层间提供了数据传输和事件系统,整个系统分为两块视图层(View)和逻辑层(App Service)。

改起来框架可以让数据与视图非常简单地保持同步,其实和双向绑定是一个道理,用ng-model去实现页面的改变跟小程序所对应的数据对应改变是一个道理。

<view> Hello {{name}}! </view>
<button bindtap="changeName"> Click me! </button>
   var helloData = {
name: 'WeChat'
       }

// Register a Page.
       Page({
data: helloData,
           changeName: function(e) {
// sent data change to view
               this.setData({
name: 'MINA'
               })
}
})

通过框架将逻辑层数据中的 name 与视图层的 name 进行了绑定,当点击按钮的时候,视图层会发送 changeName 的事件给逻辑层,逻辑层找到对应的事件处理函数 逻辑层执行了 setData 的操作,将 name 从 WeChat 变为 MINA,因为该数据和视图层已经绑定了,从而视图层会自动改变为 Hello MINA! 。


明天计划完成的事:试着写下小程序开发,把之前angular的剩下的继续做完,差不多就是这么个节奏。


遇到的问题:对于angular的服务有些时候还是没懂,看到官网上用的是http()然后里面用到自定义的方法去定义了url和传参数据,比如

$http.get(pathProject.getArticlelist_url, {params: params});

$http服务简写标准看起来有点尬,自定义服务怎么用,怎么设置有点懵逼。


收获:


返回列表 返回列表
评论

    分享到