我在我的角度项目中嵌入了ace编辑器。但是在我的ts文件中,它总是告诉ace / edit_session模块未找到。我在tsconfig中包含了require。
我的ts文件:
import { Component, OnInit } from '@angular/core';
declare var ace : any;
@Component({
selector: 'app-editor',
templateUrl: './editor.component.html',
styleUrls: ['./editor.component.css']
})
export class EditorComponent implements OnInit {
constructor() { }
ngOnInit() {
var editor = ace.edit("editor");
editor.setTheme("ace/theme/twilight");
var EditSession = require("ace/edit_session").EditSession;
var js = new EditSession("some js code");
var css = new EditSession(["some", "css", "code here"]);
editor.session.setMode("ace/mode/python");
editor.setOptions({
'fontSize': 17,
'behavioursEnabled': true,
'wrapBehavioursEnabled': false,
'wrap': true,
'indentedSoftWrap': false,
'enableLiveAutocompletion': true,
});
// and then to load document into editor, just call
editor.setSession(js);
}
}
答案 0 :(得分:0)
答案取决于您在页面中包含ace的方式,上面的代码段中未显示该方法。
但是,由于ace.edit
已经为您服务,因此请尝试使用require("ace/edit_session").EditSession;
或ace.EditSession
而不是ace.require("ace/edit_session")
,它们应该出现在最新版本的ace中。
答案 1 :(得分:0)