一天500m流量够用吗用完了,后面流量怎么算

//微信小程序教程六:逻辑层(App Service)
小程序开发框架的逻辑层是由JavaScript编写。
逻辑层将数据进行处理后发送给视图层,同时接受视图层的事件反馈。 在 JavaScript 的基础上,我们做了一些修改,以方便地开发小程序。
增加&&和&&方法,进行程序和页面的注册。
提供丰富的&,如扫一扫,支付等微信特有能力。
每个页面有独立的,并提供能力。
由于框架并非运行在浏览器中,所以 JavaScript 在 web 中一些能力都无法使用,如 document,window 等。
开发者写的所有代码最终将会打包成一份 JavaScript,并在小程序启动的时候运行,直到小程序销毁。类似 ServiceWorker,所以逻辑层也称之为 App Service。
App()&函数用来注册一个小程序。接受一个 object 参数,其指定小程序的生命周期函数等。
object参数说明:
生命周期函数--监听小程序初始化
当小程序初始化完成时,会触发 onLaunch(全局只触发一次)
生命周期函数--监听小程序显示
当小程序启动,或从后台进入前台显示,会触发 onShow
生命周期函数--监听小程序隐藏
当小程序从前台进入后台,会触发 onHide
开发者可以添加任意的函数或数据到 Object 参数中,用this&可以访问
前台、后台定义:&当用户点击左上角关闭,或者按了设备 Home 键离开微信,小程序并没有直接销毁,而是进入了后台;当再次进入微信或再次打开小程序,又会从后台进入前台。
只有当小程序进入后台一定时间,或者系统资源占用过高,才会被真正的销毁。
示例代码:
onLaunch: function() {
onShow: function() {
onHide: function() {
globalData: 'I am global data' })
App.prototype.getCurrentPage()
getCurrentPage()&函数用户获取当前。
我们提供了全局的&getApp()&函数,可以获取到小程序实例。
var appInstance = getApp() console.log(appInstance.globalData)
App()&必须在&app.js&中注册,且不能注册多个。
不要在定义于&App()&内的函数中调用&getApp()&,使用&this&就可以拿到 app 实例。
不要在 onLaunch 的时候调用&getCurrentPage(),此时 page 还没有生成。
通过&getApp()&获取实例之后,不要私自调用生命周期函数。
Page()&函数用来注册一个页面。接受一个 object 参数,其指定页面的初始数据、生命周期函数、事件处理函数等。
object 参数说明:
页面的初始数据
生命周期函数--监听页面加载
生命周期函数--监听页面初次渲染完成
生命周期函数--监听页面显示
生命周期函数--监听页面隐藏
生命周期函数--监听页面卸载
onPullDownRefreash
页面相关事件处理函数--监听用户下拉动作
开发者可以添加任意的函数或数据到 object 参数中,用&this&可以访问
示例代码:
text: "This is page data." },
onLoad: function(options) {
onReady: function() {
onShow: function() {
onHide: function() {
onUnload: function() {
onPullDownRefresh: function() {
viewTap: function() { this.setData({
text: 'Set some data for updating view.' })
初始化数据
初始化数据将作为页面的第一次渲染。data 将会以 JSON 的形式由逻辑层传至渲染层,所以其数据必须是可以转成 JSON 的格式:字符串,数字,布尔值,对象,数组。
渲染层可以通过&&对数据进行绑定。
示例代码:
&{{text}}& &{{array[0].msg}}&
text: 'init data',
array: [{msg: '1'}, {msg: '2'}]
生命周期函数
onLoad: 页面加载
一个页面只会调用一次。
参数可以获取wx.navigateTo和wx.redirectTo及&navigator/&中的 query。
onShow: 页面显示
每次打开页面都会调用一次。
onReady: 页面初次渲染完成
一个页面只会调用一次,代表页面已经准备妥当,可以和视图层进行交互。
对界面的设置如wx.setNavigationBarTitle请在onReady之后设置。详见
onHide: 页面隐藏
当navigateTo或底部tab切换时调用。
onUnload: 页面卸载
当redirectTo或navigateBack的时候调用。
页面相关事件处理函数
onPullDownRefresh: 下拉刷新
监听用户下拉刷新事件。
需要在config的选项中开启enablePullDownRefresh。
当处理完数据刷新后,可以停止当前页面的下拉刷新。
事件处理函数
除了初始化数据和生命周期函数,Page 中还可以定义一些特殊的函数:事件处理函数。在渲染层可以在组件中加入,当达到触发事件时,就会执行 Page 中定义的事件处理函数。
示例代码:
bindtap="viewTap"& click me &
viewTap: function() { console.log('view tap')
Page.prototype.setData()
setData&函数用于将数据从逻辑层发送到视图层,同时改变对应的&this.data&的值。
直接修改 this.data 无效,无法改变页面的状态,还会造成数据不一致。
单次设置的数据不能超过1024kB,请尽量避免一次设置过多的数据。
setData() 参数格式
接受一个对象,以 key,value 的形式表示将 this.data 中的 key 对应的值改变成 value。
其中 key 可以非常灵活,以数据路径的形式给出,如&array[2].message,a.b.c.d,并且不需要在 this.data 中预先定义。
示例代码:
&{{text}}&
bindtap="changeText"& Change normal data & &{{array[0].text}}&
bindtap="changeItemInArray"& Change Array data & &{{obj.text}}&
bindtap="changeItemInObject"& Change Object data & &{{newField.text}}&
bindtap="addNewField"& Add new data &
text: 'init data',
array: [{text: 'init data'}],
text: 'init data' }
changeText: function() {
this.setData({
text: 'changed data' })
changeItemInArray: function() {
this.setData({ 'array[0].text':'changed data' })
changeItemInObject: function(){ this.setData({ 'object.text': 'changed data' });
addNewField: function() { this.setData({ 'newField.text': 'new data' })
以下内容你不需要立马完全弄明白,不过以后它会有帮助。
下图说明了 Page 实例的生命周期。
页面的路由
在小程序中所有页面的路由全部由框架进行管理,对于路由的触发方式以及页面生命周期函数如下:
路由后页面
路由前页面
小程序打开的第一个页面
onLoad,onShow
打开新页面
调用 API&&或使用组件&
onLoad,onShow
页面重定向
调用 API&&或使用组件&
onLoad,onShow
调用 API&或用户按左上角返回按钮
多 Tab 模式下用户切换 Tab
第一次打开 onLoad,onshow;否则 onShow
三、文件作用域
在 JavaScript 文件中声明的变量和函数只在该文件中有效;不同的文件中可以声明相同名字的变量和函数,不会互相影响。
通过全局函数&&可以获取全局的应用实例,如果需要全局的数据可以在&App()&中设置,如:
globalData: 1 })
var localValue = 'a'
var app = getApp()
app.globalData++
var localValue = 'b'
console.log(getApp().globalData)
我们可以将一些公共的代码抽离成为一个单独的 js 文件,作为一个模块。模块只有通过&module.exports&或者&exports&才能对外暴露接口。
需要注意的是:
exports&是&module.exports&的一个引用,因此在模块里边随意更改&exports&的指向会造成未知的错误。所以我们更推荐开发者采用module.exports&来暴露模块接口,除非你已经清晰知道这两者的关系。
小程序目前不支持直接引入&node_modules&, 开发者需要使用到&node_modules&时候建议拷贝出相关的代码到小程序的目录中。
function sayHello(name) { console.log(`Hello ${name} !`)
} function sayGoodbye(name) { console.log(`Goodbye ${name} !`)
} module.exports.sayHello = sayHello
exports.sayGoodbye = sayGoodbye
在需要使用这些模块的文件中,使用&require(path)&将公共代码引入
var common = require('common.js')
helloMINA: function() {
common.sayHello('MINA')
goodbyeMINA: function() {
common.sayGoodbye('MINA')
ES6 语法以及 API 支持
微信小程序运行在三端:iOS、Android 和 用于调试的开发者工具
在 iOS 上,小程序的 javascript 代码是运行在 JavaScriptCore 中
在 Android 上,小程序的 javascript 代码是通过 X5 内核来解析
在 开发工具上, 小程序的 javascript 代码是运行在 nwjs(chrome内核) 中
虽然尽管三端的环境是十分相似的,但是至少在目前还是有一些区别的,这给很多开发者带来很大的困扰。
在 0.10.101000 以及之后版本的开发工具中,会默认使用&babel&将开发者代码&ES6&语法转换为三端都能很好支持的&ES5&的代码,帮助开发者解决环境不同所带来的开发问题。开发者可以在项目设置中关闭这个功能。
需要注意的是:
这种转换只会帮助开发处理语法上问题,新的&ES6&的 API 例如&Promise&等需要开发者自行引入&Polyfill&或者别的类库。
为了提高代码质量,在开启&ES6&转换功能的情况下,默认启用&javasctipt&严格模式,请参考&&。
小程序开发框架提供丰富的微信原生 API,可以方便的调起微信提供的能力,如获取用户信息,本地存储,支付功能等。
详细介绍请参考&您还可以使用以下方式登录
当前位置:&>&&>& > 微信小程序离App杀手有多远
微信小程序 app.json 微信小程序离App杀手有多远
导读:千呼万唤始出来,被戏称为“App杀手”的微信小程序终于正式上线了。1月9日消息,微信小程序于凌晨正式上线,目前包括出行、团购、媒体等多个领域的知名应用均推出了相  千呼万唤始出来,被戏称为“App杀手”的微信小程序终于正式上线了。1月9日消息, 微信小程序于凌晨正式上线,目前包括出行、团购、媒体等多个领域的知名应用均推出了相应的小程序。一时间,小程序更是成为应用开发和创业者圈子内逢人便提的话题。
  一问:功能   去年1月腾讯高级副总裁、微信创始人张小龙发出“应用号”的宣言,酝酿了整整一年之后,微信小程序终于正式上线。首批上线的小程序数量预计过百,滴滴出行、携程、美团、今日头条等耳熟能详的App都相应推出了小程序版本,更不乏渴望抓住机遇的新面孔。
  据了解,微信用户需要将微信更新至iOS 6.5.3版本或Android 6.5.3版本,在使用小程序后,可进入微信“发现”页面获得小程序入口,也可以在发现页面访问已经体验过的小程序,还可以通过扫描二维码,或是搜一搜使用。小程序之间、小程序与聊天界面之间都可以切换,用户还可以收到小程序的客服消息和模板消息,将来,用户还将在“发现-小程序”里“附近的店”找到附近的小程序。
  2016年12月底,微信创始人张小龙在微信公开课上曾表示,微信将自身小程序这一产品的定位看做一个在某种程度上可以运行程序的程序,这些小程序不同于传统的手机App,具有无需安装、触手可及、用完即走、无需卸载的特点。记者观察发现,小程序携程酒店机票火车票、滴滴出行、美团生活、美团外卖、今日头条lite等界面中显示的功能条目都十分简单明了,很符合即用即走的功能特点。
  二问:生态   微信小程序的生态建立在巨大的用户量基础之上,从微信官方公布的数据来看,去年9月微信平均日登录用户达到了7.68亿人次,较前年增长35%,50%的用户每天使用微信超过90分钟。“哪里有足够多的用户,哪里就可能产生需求场景”,作为社交平台,微信小程序对于企业和创业者的吸引力不言而喻。
  小程序在酝酿时期就让业内沸腾了一阵子,不少已有规模的应用团队、创业者、程序开发者瞄准这一机会跃跃欲试。已经开通小程序的脉脉方面人员表示,“在做申请开发的时候比较麻烦,微信的审核十分严格,或许是为保证用户体验。”
  前豌豆荚技术负责人、现轻芒联合创始人范怀宇对北京商报记者表示,轻芒杂志小程序推出,新用户量十分可观,他判断近几天用户数量肯定会持续增长。他强调,“小程序创造了微信群里互推和线下扫码等新场景,但关键是口碑传播,这将产生很大的用户价值,后续围绕场景如何开发产品成为开发者思考的重要课题”。电商平台什么值得买CEO那昕表示,小程序正式发布之前,公司已经着手开发什么值得买的小程序。从目前来看,小程序对于什么值得买的影响更多是积极意义的影响,小程序作为App的补充,有增量意义。尤其是在社交的环境下,什么值得买用户通过小程序分享商品或信息的用户场景、习惯,与此前平台App端和PC端的场景和习惯并不相同,根据上线首日部分平台用户调查情况来看,用户反馈效果不错。
  据相关统计显示,目前已知的小程序大多是生活相关领域产品,符合用户日常应用需求。易观分析群组总经理董旭认为,目前小程序较适合拥有使用场景的高频低深度产品。一方面,腾讯希望小程序能够成为一个连接线上线下、再次集中流量的超级入口(PC时代是搜索)。另一方面对于用户而言,信息爆炸已经接近临界点,从需求角度开始强烈呼唤做信息减法。而这一临界点在之前的时代并没有积累到今天的程度,这也是为什么小程序比之前的产品更加得到市场的广泛关注。
  三问:矛盾   根据记者观察发现,在搜索和分享等方面,小程序都受到一定的限制因素影响。在搜索方面,携程、美团就可以模糊搜索出结果,但搜索摩拜单车就必须用全称。据了解,开发者所提交的搜索tag此次并未列入搜索的范围。微信方面表示,小程序以精确搜索结果为主,会不断进行动态调整。
  不过这一做法仍然存在矛盾之处,有分析称,模糊搜索涉及的排序和抢占名称等问题是搜索和应用商店的顽疾。对此,微信方面人员称,“申请小程序上线会有严格审核,需提交主体的资质文件由认证第三方审核机构审核,注册需对公打款”。
  另外,除了搜索和转发,小程序不设置分享、群发、推送等功能,封闭了线上导流的渠道。董旭认为,线上导流的设置对于小程序成为超级入口没有什么益处,这也是为什么小程序并没有一上来就开发丰富的功能满足企业各方面需求的原因。不过这对于热切盼望用户增长的开发者来说却有些纠结:小程序内的功能内容都被大大压缩,部分用户甚至果断卸载原有的App。
  “妥善利用微信小程序的开发者并不会心生情绪”,范怀宇认为,App用户习惯比较固定,而小程序的优势是轻量即时,二者形成互补性。在小程序中可以结识新用户,微信通过自身的社交影响力成为这些应用的社交延展,但App的服务内容必然与小程序不同,有想法的开发者一定会做区隔服务于不同的需求。
  四问:前景   从还未上线起,部分业内人士就声称小程序将对App形成冲击威胁应用分发平台的生存。在艾媒咨询董事长张毅看来,小程序更像是微信向线下发展的桥头堡,以减少线上传播渠道的做法来做线下商品交易的布局,通过微信支付和社交功能,把腾讯在线产品向线下渗透。“移动互联网的下半场主要围绕着线下,打破格局需要把线下消费运作起来。这点值得腾讯探索,小程序的出现就是简化O2O应用以及工具类应用,使其通过微信快速触及用户,因此会对这两类App的用户数量有一定的影响。”他补充道。
  此前,微信就有庞杂的超级App一称,小程序的出现让业内对微信产品的承载力更心生担忧情绪。有分析人士甚至提出在手机界面创建小程序快捷方式的做法。实际上,小程序能否健康运营与微信的承载量有很大的关系,这是微信需要面临的首要问题。另外,当前小程序的内容功能过于简单,是否适应用户需求、如何为开发者和企业提供多样盈利方式仍然存在疑问,随着小程序数量越来越多,一些新的问题也会出现。
  范怀宇认为,按照微信对小程序的规划来看,微信一定会继续将它作为提升效率的程序工具,也一定会增强用户体验。“小程序内设置盈利接口的可能性是很大的,第一版已经内嵌付费功能,开发者需要思考如何合理安排不影响用户使用的付费阅读和其他付费价值”。
  在过去一两年里,阿里系支付宝与百度都在轻应用方面有过试水,但市场的回应并不大。微信小程序的上线却引起了业内震动,在张毅看来主要是因为微信社交生态带给外界的期待比较高。更关键的是,从时间点上看,阿里与百度轻应用试水时市场还没有足够多的需求,当下实体产业转型愿望迫切,甚至成为生死攸关的节点,因此助推了小程序的火爆。对于竞争对手是否会跟进,他表示,专注人工智能技术的百度可能并不会投入精力,但阿里跟进的可能性非常大。(北京商报记者 姜红/文) 就爱阅读网友整理上传,为您提供最全的知识大全,期待您的分享,转载请注明出处。
欢迎转载:
推荐:    教你如何使用微信开发工具体验微信小程序
教你如何使用微信开发工具体验微信小程序。微信小程序将在日正式上线,目前个人不能注册小程序,如果我们要向体验小过程可以使用微信开发工具进行体验。
1 创建项目
首先在微信提供的网站下载开发工具:
https://mp./debug/wxadoc/dev/devtools/download.html?t=9
安装完成后,打开开发工具,将会要求扫码进入,如图1所示。
登录后,将会进入开发工具主界面,如图2所示。
我们选择【本地小程序项目】,选择【添加项目】如图3所示。
创建【HelloWorld】项目,且AppID选择【无AppID】,如图4所示。
添加项目后,选择【编辑】,将会在开发工具中看到图5所示界面。
2 项目结构
创建小程序项目后,开发工具在根目录(项目路径)中有三个主体文件app.js、app.json、app.wxss和两个文件夹pages、utils。
(1)app.js :是程序主入口的脚本文件(小程序逻辑);
(2)app.json :是全局配置文件(小程序公共设置);
(3)app.wxss :是小程序的样式表文件(小程序公共样式表);
(4)pages:所有的页面都在 pages 文件夹中(小程序页面);
(5)utils:存放全局的一些.js文件,公共用到的一些事件处理代码文件可以放到该文件夹下,用于全局调用。
一个小程序主体部分由三个文件组成,必须放在项目的根目录下面。小程序的所有页面放置在pages文件夹中,且每个页面占据一个子文件夹,并由四个文件组成,分别是index.js(页面逻辑)、index.json(页面配置)、index.wxml(页面结构)和index.wxss(页面样式表)。
注意:四个文件名必须和子文件夹一致
在演示项目中,工具自动生成了两个页面,分别是首页面和日志页面。
3 主体配置文件
使用app.json文件来对微信小程序进行全局配置,决定页面文件的路径、窗口表现、设置网络超时时间、设置多 tab 等。
onLaunch: function () {//小程序启动的时候就会调用它
//调用API从本地缓存中获取数据,若没有创建一个空数组
var logs = wx.getStorageSync('logs') || []
logs.unshift(Date.now())//插入当前的日期
wx.setStorageSync('logs', logs)//内容写入到本地缓存中
getUserInfo:function(cb){//获取当前用户登录信息
var that = this
if(this.globalData.userInfo){//已登录
typeof cb ==
&function& && cb(this.globalData.userInfo)
//调用登录接口
wx.login({
success: function () {
wx.getUserInfo({
success: function (res) {
that.globalData.userInfo = res.userInfo
typeof cb ==
&function& && cb(that.globalData.userInfo)
globalData:{
userInfo:null
这里初始化了一个 App 对象,并且定义了三个方法 onLaunch,getUserInfo 和 globalData。
4 app.json
&pages&:[//工程有两个页面
&pages/index/index&,//第一个元素作为小程序的主页,与index名称无关
&pages/logs/logs&
&window&:{
&backgroundTextStyle&:&light&,//背景文本类型
&navigationBarBackgroundColor&: &#fff&,//导航背景颜色
&navigationBarTitleText&: &WeChat&,//导航文本
&navigationBarTextStyle&:&black&//导航文字颜色
这个配置文件中定义了两个节点,【pages】和【window】, pages 是小程序的所有页面对应的路径, window 是小程序窗口的配置信息。
5 app.wxss
相当于css文件
/**app.wxss**/
.container {
height: 100%;
flex-direction:
align-items:
justify-content: space-
padding: 200rpx 0;
box-sizing: border-
6 pages文件夹
pahes文件夹中结构如图6所示。
其中index和logs文件夹对应app.json中两个页面。
6.1 index文件夹
6.1.1 index.js
//index.js
//获取应用实例
var app = getApp()//获取app实例,即根目录app.js定义的APP
motto: 'Hello World',
userInfo: {}
//事件处理函数
bindViewTap: function() {
wx.navigateTo({//页面跳转
url: '../logs/logs'
onLoad: function () {
console.log('onLoad')
var that = this
//调用应用实例的方法获取全局数据
app.getUserInfo(function(userInfo){
//更新数据
that.setData({
userInfo:userInfo
6.1.2 index.wxml
//绑定点击事件(index.js中定义)
{{userInfo.nickName}}
//motto为pages/index/index.中定义数据
对应于首页面的一张图片和一句问候语,如图7所示。
7 上传小程序
logs 和 index 的页面的基本思路都是一样。 开发完小程序后,我们怎么部署呢? 切换到项目选项卡,然后点击上传按钮即可。
由于我的环境没有内测账号,所以在上传区域显示的是项目未关联 AppID, 如果有了测试账号,就会显示你的 AppID 了。 目前只有内测账号才能够上传小程序。这就是唯一的差别了。没有内测账号只是不能上传,但完全可以在本地开发和测试。您所在的位置: &
微信小程序新手教程之json配置
编辑:xwgod
来源:下载吧
  微信小程序新手教程之json配置,本篇默认已经成功安装微信小程序工具,来和小编一起看看吧  json配置  进行全局配置,  决定页面文件的路径、  窗口表现、  设置网络超时时间、  设置多 tab  ...  app.json 配置项列表属性类型必填描述pagesString
Array是设置页面路径windowObject否设置默认页面的窗口表现tabBarObject否设置底部
tab 的表现networkTimeoutObject否设置网络超时时间debugBoolean否设置是否开启
debug 模式  pages  小程序中新增/减少页面,都需要对 pages 数组进行修改。  文件名不需要写文件后缀,因为框架会自动去寻找路径.js,.json,.wxml,.wxss的四个文件进行整合  window  设置小程序的状态栏、导航条、标题、窗口背景色。  tabBar  如果我们的小程序是一个多 tab 应用(客户端窗口的底部有tab栏可以切换页面),那么我们可以通过 tabBar 配置项指定 tab 栏的表现,以及
tab 切换时显示的对应页面。  tabBar 是一个数组,只能配置最少2个、最多5个 tab,tab 按数组的顺序排序。  内容与显示分离  {[几个包含数据的对象],统一的样式设置1,统一的样式设置2,统一的样式设置3}  networkTimeout  可以设置各种网络请求的超时时间。  debug  可以在开发者工具中开启 debug 模式  page.json  每一个小程序页面也可以使用.json文件来对本页面的窗口表现进行配置。  只  只是  只是设置 app.json 中的 window 配置项的内容,页面中配置项会覆盖 app.json 的 window 中相同的配置项。  决定本页面的窗口表现  无需!!!写 window 这个键,如:  {  &navigationBarBackgroundColor&: &#ffffff&,  &navigationBarTextStyle&: &black&,  &navigationBarTitleText&: &微信接口功能演示&,  &backgroundColor&: &#eeeeee&,  &backgroundTextStyle&: &light&  }  下面小编就给大家介绍一种一个小程序吧  嗨图功能  1、专题――DIY图片的模板,点击可以生成使用,分享到朋友圈。  2、分享墙――用户上传的自己DIY作品。  3、立即制作――可以用自己的图来DIY。  4、告诉我――告诉产品的改进,内容的增加。  想要体验怎么制作属于自己个性朋友圈照片的用户,扫一扫下面的二维码就可以啦!还等什么,赶紧扫码体验,开启你的嗨图之旅吧!
微信小程序相关软件
微信小程序相关教程
微信小程序相关新闻
微信小程序问题汇总
微信小程序使用教程
微信小程序开发教程
热门关键字微信 小程序(1)
大家使用&bold&app.json&/bold&文件对微信小程序进行全局配置。可以决定页面文件的路径、窗口表现、设置网络的超时时间、设置tab等。app.json文件的配置属性有
1.pages,数据类型是Array,功能:设置页面的路径.这个属性必须有
2.window:数据类型:Object.功能:设置默认页面的窗口表现.这个属性可有可有
&window可以设置的属性有以下5个:navigationBarBackgroundColor & navigationBarTextStyle &navigationBarTitleText &backgroundColor backgroundTextStyle
3.tabBar:数据类型:Object.功能:设置底部tab表现这个属性可有可无
&tabBar可以设置的属性有color selectedColor backgroundColor &borderStyle list
4.networkTimeout:数据类型:Object 功能:设置网络超时时间.这个属性可有可无
networkTImeout可以设置的属性有request connectedSocket uploadFile downloadFile
5.debug:数据类型:Boolean.功能:设置debug功能是否开启.这个属性可有可无.
以下json文件,包含以上5个属性.
“pages”:[
&pages/index/index&,
&pages/logs/logs/index&],
&window&:{
&tabBar&:{
&pagePath&:&pages/index/index&,
&text&:&首页&
&pagePath&:&pages/logs/logs&,
&text&:日志
&networkTimeout&:{
&request&:10000,
&downloadFile&:10000
&debug&:true
&strong&研究一个属性从以下角度考虑1.:属性值的类型2.属性的默认值3.属性的功能
&&相关文章推荐
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:6870次
排名:千里之外
原创:49篇
(8)(39)(2)(7)(4)}

我要回帖

更多关于 一天500m流量够用吗 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信