Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在meteor应用程序中使用famo.us CDN链接?_Meteor_Famo.us - Fatal编程技术网

如何在meteor应用程序中使用famo.us CDN链接?

如何在meteor应用程序中使用famo.us CDN链接?,meteor,famo.us,Meteor,Famo.us,随着famo.us的发布,它将所有库都作为CDN托管的库。如何在meteor应用程序中使用这些 我对famo.us代码中的“define”有很多问题 我所做的是创建一个新的meteor应用程序,然后从famo.us样板文件中,我获取html并将其放入客户机文件夹中,使其看起来像 <head> <title>famo.us App</title> <meta name="viewport" content="width=device

随着famo.us的发布,它将所有库都作为CDN托管的库。如何在meteor应用程序中使用这些

我对famo.us代码中的“define”有很多问题

我所做的是创建一个新的meteor应用程序,然后从famo.us样板文件中,我获取html并将其放入客户机文件夹中,使其看起来像

<head>  
  <title>famo.us App</title>
        <meta name="viewport" content="width=device-width, maximum-scale=1, user-scalable=no" />
        <meta name="mobile-web-app-capable" content="yes" />
        <meta name="apple-mobile-web-app-capable" content="yes" />
        <meta name="apple-mobile-web-app-status-bar-style" content="black" />

        <!-- shims for backwards compatibility -->
        <script type="text/javascript" src="http://code.famo.us/lib/functionPrototypeBind.js"></script>
        <script type="text/javascript" src="http://code.famo.us/lib/classList.js"></script>
        <script type="text/javascript" src="http://code.famo.us/lib/requestAnimationFrame.js"></script>

        <!-- module loader -->
        <script type="text/javascript" src="http://code.famo.us/lib/require.js"></script>

        <!-- famous -->
        <link rel="stylesheet" type="text/css" href="http://code.famo.us/famous/0.2/famous.css" />
        <script type="text/javascript" src="http://code.famo.us/famous/0.2/famous.min.js"></script>

        <!-- app code -->
        <link rel="stylesheet" type="text/css" href="css/app.css" />
        <script type="text/javascript">
            require.config({'localhost:3000': 'public/'});
            require(['main']);
        </script>

</head>

<body>  
</body>
define(function(require, exports, module) {
    // import dependencies
    var Engine = require('famous/core/Engine');
    var Modifier = require('famous/core/Modifier');
    var Transform = require('famous/core/Transform');
    var ImageSurface = require('famous/surfaces/ImageSurface');

    // create the main context
    var mainContext = Engine.createContext();

    // your app here
    var logo = new ImageSurface({
        size: [200, 200],
        content: 'http://code.famo.us/assets/famous_logo.svg',
        classes: ['double-sided']
    });

    var initialTime = Date.now();
    var centerSpinModifier = new Modifier({
        origin: [0.5, 0.5],
        transform : function(){
            return Transform.rotateY(.002 * (Date.now() - initialTime));
        }
    });

    mainContext.add(centerSpinModifier).add(logo);
});
来自main.js

main.js看起来像

<head>  
  <title>famo.us App</title>
        <meta name="viewport" content="width=device-width, maximum-scale=1, user-scalable=no" />
        <meta name="mobile-web-app-capable" content="yes" />
        <meta name="apple-mobile-web-app-capable" content="yes" />
        <meta name="apple-mobile-web-app-status-bar-style" content="black" />

        <!-- shims for backwards compatibility -->
        <script type="text/javascript" src="http://code.famo.us/lib/functionPrototypeBind.js"></script>
        <script type="text/javascript" src="http://code.famo.us/lib/classList.js"></script>
        <script type="text/javascript" src="http://code.famo.us/lib/requestAnimationFrame.js"></script>

        <!-- module loader -->
        <script type="text/javascript" src="http://code.famo.us/lib/require.js"></script>

        <!-- famous -->
        <link rel="stylesheet" type="text/css" href="http://code.famo.us/famous/0.2/famous.css" />
        <script type="text/javascript" src="http://code.famo.us/famous/0.2/famous.min.js"></script>

        <!-- app code -->
        <link rel="stylesheet" type="text/css" href="css/app.css" />
        <script type="text/javascript">
            require.config({'localhost:3000': 'public/'});
            require(['main']);
        </script>

</head>

<body>  
</body>
define(function(require, exports, module) {
    // import dependencies
    var Engine = require('famous/core/Engine');
    var Modifier = require('famous/core/Modifier');
    var Transform = require('famous/core/Transform');
    var ImageSurface = require('famous/surfaces/ImageSurface');

    // create the main context
    var mainContext = Engine.createContext();

    // your app here
    var logo = new ImageSurface({
        size: [200, 200],
        content: 'http://code.famo.us/assets/famous_logo.svg',
        classes: ['double-sided']
    });

    var initialTime = Date.now();
    var centerSpinModifier = new Modifier({
        origin: [0.5, 0.5],
        transform : function(){
            return Transform.rotateY(.002 * (Date.now() - initialTime));
        }
    });

    mainContext.add(centerSpinModifier).add(logo);
});

从源代码看,它看起来像是它的,因为meteor在加载famo.us文件之前编译了main.js并包含了它。

您是否尝试过直接在脚本标记中加载main.js,而不是使用脚本标记来“要求”它。我正在做一些类似的事情,将main.js代码直接注入到html中,但这里有一个示例,我已经将其拆分出来,并且可以正常工作(尽管我没有使用meteor)

显然,我也对代码做了一些修改,没有使用define,但是这个修改是直接的。这里是html和js。。。 html:


伟大的问题;famo.us正从约曼/格朗特搬走

为了澄清rich的答案,这里有一个简单的index.html

<html>
  <script src='http://code.famo.us/lib/require.js'></script>
  <script src='http://code.famo.us/famous/0.2/famous.min.js'></script>

  <script>
    require([
      'famous/core/Engine',
      'famous/core/Surface',
      'famous/core/Modifier'
    ], function(Engine, Surface, Modifier){
      var context = Engine.createContext();

      var helloSurf = new Surface({
        content: 'hello world',
        properties: {
          backgroundColor:'red'
        }
      });

      var helloMod = new Modifier({
        size: [100, 100],
        origin: [.5, 0]
      });

      context.add(helloMod).add(helloSurf);
    });
  </script>
<html>

要求([
“著名/核心/引擎”,
“著名/核心/表面”,
“著名/核心/修饰语”
],功能(引擎、曲面、修改器){
var context=Engine.createContext();
var helloSurf=新曲面({
内容:“你好,世界”,
特性:{
背景颜色:“红色”
}
});
var helloMod=新修改器({
尺寸:[100100],
来源:[.5,0]
});
add(helloMod).add(helloSurf);
});

您是否尝试将美赞臣:著名软件包导入您的meteor项目


meteor add mjn:著名的

您尝试过将其作为一个包添加吗?meteor没有办法添加单个JS文件,而不是作为大气包提供吗?如果是这样,只需从CDN下载著名的.js,并将其保存到您的项目本地。这样Meteor的构建系统就可以将其打包。与famo.us worksmeteor的工作方式不太一样。它会在你的项目中找到所有的js,并将其全部咀嚼在一起,它似乎在加载CDN脚本之前就这样做了。实际上,经过一些黑客的努力,我已经成功了,谢谢!截至2015年2月,建议将Famo.us与Meteor一起使用的方法是添加一个。截至2015年2月,建议将Famo.us与Meteor一起使用的方法是添加一个。推荐人。自2015年2月起,推荐将Famo.us与Meteor一起使用的方法是添加一个。
<html>
  <script src='http://code.famo.us/lib/require.js'></script>
  <script src='http://code.famo.us/famous/0.2/famous.min.js'></script>

  <script>
    require([
      'famous/core/Engine',
      'famous/core/Surface',
      'famous/core/Modifier'
    ], function(Engine, Surface, Modifier){
      var context = Engine.createContext();

      var helloSurf = new Surface({
        content: 'hello world',
        properties: {
          backgroundColor:'red'
        }
      });

      var helloMod = new Modifier({
        size: [100, 100],
        origin: [.5, 0]
      });

      context.add(helloMod).add(helloSurf);
    });
  </script>
<html>