在 Ember 应用程序中配置 PhantomJS
Configure PhantomJS in an Ember App
我正在开发一个 ember 插件,它利用依赖内联样式的库 (PDF.js) 在 PDF 渲染上构建 DOM 以启用内联文本选择PDF 查看体验。
我可以 运行 在浏览器中测试并检查内联样式就好了,但是如果我 运行 它们在 PhantomJS 中 ember exam
或 ember test
(目前headless chrome 不受我们的工具支持),永远不会应用 style 属性。我已经通过从测试中打印 this.$()[0].innerHTML
并看到没有样式属性来验证这一点。
我注意到,通过 settings config or command line interface,PhantomJS 中的网络安全标志支持这种内联样式的剥离,并且默认设置为强制执行。看到我的应用程序的 CSP 允许内联样式,我想用类似的设置测试我的用例。
有什么方法可以通过 ember cli 为 PhantomJS 提供配置或参数?
可以使用 phantom_args 选项通过测试配置设置参数。
但是,该问题并非由 phantom 中的任何安全设置引起。直接在 this.get('element')
上设置 HTMLElement.style 属性将不会在 phantom 中应用内联样式。您将需要直接引用样式(例如,this.get('element').style.width = '100px';
)
我正在开发一个 ember 插件,它利用依赖内联样式的库 (PDF.js) 在 PDF 渲染上构建 DOM 以启用内联文本选择PDF 查看体验。
我可以 运行 在浏览器中测试并检查内联样式就好了,但是如果我 运行 它们在 PhantomJS 中 ember exam
或 ember test
(目前headless chrome 不受我们的工具支持),永远不会应用 style 属性。我已经通过从测试中打印 this.$()[0].innerHTML
并看到没有样式属性来验证这一点。
我注意到,通过 settings config or command line interface,PhantomJS 中的网络安全标志支持这种内联样式的剥离,并且默认设置为强制执行。看到我的应用程序的 CSP 允许内联样式,我想用类似的设置测试我的用例。
有什么方法可以通过 ember cli 为 PhantomJS 提供配置或参数?
可以使用 phantom_args 选项通过测试配置设置参数。
但是,该问题并非由 phantom 中的任何安全设置引起。直接在 this.get('element')
上设置 HTMLElement.style 属性将不会在 phantom 中应用内联样式。您将需要直接引用样式(例如,this.get('element').style.width = '100px';
)