我正在尝试使用Meteor读取JSON文件.我已经在stackoverflow上看到了各种答案,但似乎无法让它们工作.我试过这个 基本上说:
[{"id":1,"text":"foo"},{"id":2,"text":"bar"}]
Run Code Online (Sandbox Code Playgroud)
Meteor.startup(function() {
console.log(JSON.parse(Assets.getText('test.json')));
});
Run Code Online (Sandbox Code Playgroud)
然而,这个看似非常简单的示例不会将任何内容记录到控制台.如果我试着将它存储在一个变量而不是console.logging它然后显示它客户端我得到
Uncaught ReferenceError: myjson is not defined
Run Code Online (Sandbox Code Playgroud)
myjson是我存储它的变量.我试过阅读JSON客户端
Template.hello.events({
'click input': function () {
myjson = JSON.parse(Assets.getText("myfile.json"));
console.log("myjson")
});
}
Run Code Online (Sandbox Code Playgroud)
结果如下:
Uncaught ReferenceError: Assets is not defined
Run Code Online (Sandbox Code Playgroud)
希望有人可以帮助我
更新到meteor 0.9.0后,我在向localhost启动应用程序时遇到以下错误
Error: EACCES, permission denied '/Users/Jasper/.meteorsession'
at Object.fs.openSync (fs.js:432:18)
at Object.fs.readFileSync (fs.js:289:15)
at readSessionData (/Users/Jasper/.meteor/packages/meteor-tool/.1.0.26.1fmrgj1++os.osx.x86_64+web.browser+web.cordova/meteor-tool-os.osx.x86_64/tools/auth.js:137:24)
at Object.tryRevokeOldTokens (/Users/Jasper/.meteor/packages/meteor-tool/.1.0.26.1fmrgj1++os.osx.x86_64+web.browser+web.cordova/meteor-tool-os.osx.x86_64/tools/auth.js:331:10)
at main.registerCommand.name [as func] (/Users/Jasper/.meteor/packages/meteor-tool/.1.0.26.1fmrgj1++os.osx.x86_64+web.browser+web.cordova/meteor-tool-os.osx.x86_64/tools/commands.js:197:8)
at /Users/Jasper/.meteor/packages/meteor-tool/.1.0.26.1fmrgj1++os.osx.x86_64+web.browser+web.cordova/meteor-tool-os.osx.x86_64/tools/main.js:1212:23
Run Code Online (Sandbox Code Playgroud)
用sudo meteor启动流星会话修复了这个问题,但我想知道是什么导致这个以及如何修复它.
提前致谢
我在我的应用程序和用户页面中运行了Facebook登录,以显示最重要的用户详细信息.当我使用密码登录时,请使用以下代码:
user: function(){
return Meteor.user().username
},
Run Code Online (Sandbox Code Playgroud)
有:
<h1>Welcome {{user}}</h1>
Run Code Online (Sandbox Code Playgroud)
返回用户名.当我使用Facebook登录登录时,用户名为空.
如何通过Facebook登录时访问当前用户的用户名?
谢谢
我目前正在尝试进行简单的API调用以显示一些用户数据(包括朋友列表).
我有一个工作Facebook登录与以下请求权限(
'click .facebook': function() {
Meteor.loginWithFacebook({ requestPermissions: ['email', 'read_friendlists', 'accesToken']},
function (error) {
if (error) {
return console.log(error);
}
});
},
Run Code Online (Sandbox Code Playgroud)
比我初始化facebok通过
Template.friendsList.rendered = function(){
window.fbAsyncInit = function() {
FB.init({
appId : '278237565717322',
xfbml : true,
version : 'v2.0'
});
};
(function(d, s, id){
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) {return;}
js = d.createElement(s); js.id = id;
js.src = "//connect.facebook.net/en_US/sdk.js";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
Run Code Online (Sandbox Code Playgroud)
我想用一个简单的API调用
"click .facebookfriends": function(){
FB.api('/me', function(response) {
console.log(response)
});
}
Run Code Online (Sandbox Code Playgroud)
这给了我以下错误:
code: 2500 …Run Code Online (Sandbox Code Playgroud)