PhantomJS API声称允许通过标准require接口访问'fs'和一些其他内置commonJS模块.grunt-contrib-jasmine声称使用phantomJS运行所有规格.但是当我使用grunt-contrib-jasmine时,require方法似乎不可用?
fs = require('fs')
describe 'DesignService', ->
it 'test loadFromJSON', ->
jsonFile = fs.read("resources/sample_pole.json")
Run Code Online (Sandbox Code Playgroud)
给我错误:
ReferenceError: Can't find variable: require at
>> target/spec/Spec.js:3
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?
如果不清楚,我正在从coffeescript编译,然后将grunt-contrib-jasmine指向编译的输出.其他规格都运行正常.
我遇到了集合问题以及如何应用变换.我来自图形背景,所以我熟悉场景图以及普通的SVG组语法,但Raphael让我很困惑.假设我有一个圆圈和一组,我想在其上应用变换.
circle = paper.circle(0,0.5)
set = paper.set()
Run Code Online (Sandbox Code Playgroud)
如果我先添加圆圈,然后进行变换,则可以正常工作.
set.push circle
set.transform("s100,100")
Run Code Online (Sandbox Code Playgroud)
制作50个半径圆.但是,如果我颠倒了订单,
set.transform("s100,100")
set.push circle
Run Code Online (Sandbox Code Playgroud)
不应用转换.
这似乎会破坏许多渲染和动画类型算法,其中您的组/变换保持关节状态,并且您可以向它们添加或删除对象,而不是每次都重新创建整个变换.在文档中的某个地方是否有一个选项,我没有看到它解决这个问题,或者这个功能是否有利于简单?考虑到在SVG本身的组层次结构中直接且容易地支持它似乎很奇怪...我是否需要手动将变换从集合应用到变换集合后添加的任何子节点?