我想使用meteoric包创建一个非常简单的应用程序与流星和离子框架.使用该指南,我创建了以下非常简单的应用程序:
Router.js:
Router.configure({
layoutTemplate: 'layout'
});
Router.route('/', function () {
this.render('MyTemplate');
});
Run Code Online (Sandbox Code Playgroud)
Templates.html:
<template name="layout">
{{#ionBody}}
{{> ionNavBar}}
{{#ionNavView}}
{{> yield}}
{{/ionNavView}}
{{/ionBody}}
</template>
<template name="myTemplate">
{{#ionContent}}
Hello World!
{{/ionContent}}
</template>
Run Code Online (Sandbox Code Playgroud)
该应用程序加载没有错误,并显示内容"Hello World!" 没有任何造型.例如,为什么没有显示iosNavBar?
在每个设备上启动
meteor run ios-device
Run Code Online (Sandbox Code Playgroud)
流星需要安装cordova插件.这不是一个真正的问题,但它需要花费大量时间并且会大大减缓开发速度.我必须经常通过XCode在设备上运行它,因为热代码推送随机而来.如果它有效,它也需要30秒......
关于如何提高速度的任何提示?
我知道浏览器中的热代码推送非常快,但对于大多数部分,我无法使用它,因为我的应用程序有很多与Cordova相关的代码.哦,在我忘记它之前:是的,我在我当地的wifi上做这个.
Meteor出了测试版,我很兴奋使用它.我将它安装在我的Windows机器上(来自http://win.meteor.com/)并创建了一个应用程序.这是代码:
HTML:
<!-- simple-todos.html -->
<head>
<title>Todo List</title>
</head>
<body>
<div class="container">
<header>
<h1>Todo List</h1>
</header>
<ul>
{{#each tasks}}
{{> task}}
{{/each}}
</ul>
</div>
</body>
<template name="task">
<li>{{text}}</li>
</template>
Run Code Online (Sandbox Code Playgroud)
JavaScript的:
// simple-todos.js
if (Meteor.isClient) {
// This code only runs on the client
Template.body.helpers({
tasks: [
{ text: "This is task 1" },
{ text: "This is task 2" },
{ text: "This is task 3" }
]
});
}
Run Code Online (Sandbox Code Playgroud)
它与官方流星教程中的代码完全相同.如果我运行该示例,标题将被渲染得很好.另一方面,该列表根本没有出现.不知何故,助手不起作用.我收到以下javascript错误:
未捕获的TypeError:无法读取未定义的属性'helpers'
在流星控制台中,没有打印错误或警告.我对流星感到非常兴奋,我希望将来能够将它用于制作应用程序,所以请帮我解决这个问题(可能非常简单).我希望它不仅仅是Windows中的问题(流星尚未正式发布用于Windows).
以下代码段给出了错误:
Households.update({
_id: Meteor.user().profile.myHousehold,
"shoppingList.name" : this.name},
{"$set" : {
"shoppingList.$.checked" : checked
}
});
Run Code Online (Sandbox Code Playgroud)
WOT?我正在通过id更新.作为一种解决方法,我当然可以简单地替换整个阵列shoppingList,但那将是蛮力.