我正在从TinyMCE 3迁移到4.
但是,我正在坚持让TinyMCE填充其100%高度的容器(它确实适用于TinyMCE 3).
请注意这个小提琴:http://jsfiddle.net/MLJaN/
我使用下面的CSS尝试将iframe及其所有父项设置为100%-height.我同意它看起来并不理想,但我认为它应该以这种方式工作.
body, html, .mce-tinymce, .mce-edit-area.mce-container, iframe, .mce-container-body.mce-stack-layout
{
height: 100% !important;
}
Run Code Online (Sandbox Code Playgroud)
正如您在实况小提琴中看到的那样,正好是工具栏的像素数量"太高":即它太高(工具栏的高度)是34px.
这有效,但它不会自动调整浏览器大小,它使用的calc()现在只支持79%左右:http://jsfiddle.net/MLJaN/2/
现在,我正在寻找一个纯CSS(无calc()函数)解决方案,使整个编辑器填充其容器并可流畅地调整大小.
任何指针都将非常感激.
在过去的几周里,我一直在阅读各种StackOverflow问题和其他教程和文档(请参阅下面的一些内容),试图找到一种单元测试VSTO AddIn的方法.
不幸的是,它总是E_NOINTERFACE在我的测试中导致异常.
我正在使用的代码如下 - 一个OverAdiding的ThisAddin部分类的提取RequestComAddinAutomationService,另一个描述测试实用程序接口,测试本身,以及一个额外的程序集提取,证明AddIn程序集及其内部对测试可见.
我的问题是:为什么这不起作用?我很确定这遵循VSTO测试的普遍接受的做法.
如果以下不再可能,那么应该如何测试VSTO?.NET远程处理/ IPC是唯一的解决方案吗?
public partial class ThisAddin
{
#region Testing Utilities
private AddinHelper _comAddinObject;
protected override object RequestComAddInAutomationService()
{
// This is being called when I debug/run my project, but not when I run the tests
return _comAddinObject ?? (_comAddinObject = new AddinHelper());
}
#endregion
}
#region Testing Utilities
[ComVisible(true)]
[InterfaceType(ComInterfaceType.InterfaceIsDual)]
public interface IAddinHelper
{
Presentation GetPresentation();
string GetString();
}
[ComVisible(true)]
[ClassInterface(ClassInterfaceType.None)]
[ComSourceInterfaces(typeof(IAddinHelper))]
public class AddinHelper : StandardOleMarshalObject, …Run Code Online (Sandbox Code Playgroud) 考虑使用装饰器的相互依赖代码示例(如下)。
现在考虑以下工作流程(是的,我确实想传递实际导出的类,因为我以后需要使用它们):
Parent.ts@Test(Child)导致应用程序Child.ts在装饰时导入Parent代码尚未到达该类Child.ts,@Test(Parent)装饰器被执行Parent未定义且无法传递给装饰器。正如你所看到的,有一个讨厌的循环依赖,我看不到一种能够应用将类作为相互引用的参数的装饰器的方法。
请注意,我@Test以简洁为例。实际的装饰器是@HasManyand @BelongsTo- 所以我在这里有一个实际的用例。
我的问题是: “这个问题有解决方案吗?”
我担心没有,除非更改 TypeScript 的编译代码以推迟装饰过程,直到导入所有相关代码。
Decorators.ts:
export function Test(passedClass: Function): Function {
return function (model: Function): void {
console.log(typeof passedClass);
};
}
Run Code Online (Sandbox Code Playgroud)
Parent.ts:
import {Child} from "./Child";
import {Test} from "./Decorators";
@Test(Child)
export class Parent {
}
Run Code Online (Sandbox Code Playgroud)
Child.ts:
import {Parent} from "./Parent";
import {Test} from "./Decorators";
@Test(Parent)
export …Run Code Online (Sandbox Code Playgroud) javascript circular-dependency decorator undefined typescript
我正在使用KnockoutJS开发一个应用程序,它打算在一个长的可滚动列表中显示页面/幻灯片.
这些页面中的每一页都具有一些先进的WYSIWYG功能以及附加的大量其他工具和数据.
但是,随着页面/幻灯片数量的增加,我注意到了巨大的性能提升.
因此,我想改为只呈现视口中的幻灯片/页面的方式.一旦你滚过一个项目,我希望KnockoutJS销毁之前呈现的任何内容,而是渲染任何进入视口的内容.销毁的项目应替换为占位符li-tag(直到您向后滚动它们).
到目前为止,我已经把一个JSFiddle放在一起,很好地展示了如何只将"可见"项目的可观察"inView"设置为true.看一下演示,展示viewmodel如何响应滚动:https://jsfiddle.net/1xxy6q83/
然而,问题是让条件显示工作.每当我尝试混合/匹配foreach和if,它停止工作.我正在寻找的是Knockout只呈现在视口中看到的内容.当一个项目移出视图时,Knockout应该清理它,删除任何事件,然后渲染一个非常简单的占位符li-tag,确保列表不会跳转.
c# ×1
com ×1
css ×1
decorator ×1
height ×1
javascript ×1
knockout-3.0 ×1
knockout.js ×1
performance ×1
testing ×1
tinymce ×1
tinymce-4 ×1
typescript ×1
undefined ×1
viewport ×1
vsto ×1