我真的是新的角度。 即時通訊使用角1.6,我需要做一些現有的應用程序的變化。指令角
正如我可以搜索,以前的開發人員使用http://www.codingdrama.com/bootstrap-markdown/有一個textarea與一些文本選項和預覽。我現在的任務是覆蓋預覽按鈕,以插入文本和API返回一些結果來調用我們的API。關於那個降價的文檔,我加了起來,我發現了這個。
onPreview:功能(E){VAR previewContent
if (e.isDirty()) {
var originalContent = e.getContent()
previewContent = "Prepended text here..."
+ "\n"
+ originalContent
+ "\n"
+"Apended text here..."
} else {
previewContent = "Default content"
}
return previewContent
},
所以我開始重寫:
app.directive("markdowntextarea", ['$http', function ($http) {
return {
link: function (el_scope, element, attr) {
var previewContent = "preview";
element.markdown(
{
autofocus: false,
savable: false,
onPreview: function (e) {
console.log('1');
if (e.isDirty()) {
console.log('2!!')
var originalContent = e.getContent();
$http({
url: '/api/markdown/',
data: {"body": originalContent, "actual_format": "md", "desire_format": "html"},
method: 'POST'
}).then(function successCallback(response) {
console.log(response.data.content);
previewContent = response.data.content;
});
}else{
console.log('3')
previewContent = "";
}
previewContent = 'test';
return previewContent;
},
});
}
}
}]);
我無法找到我的錯誤,但previewContent總是返回「預覽」。從API方面來說還行,response.data.content
也是正確的。
不知道下一步該怎麼做
@ gus27分號在javascript中是可選的。 – Lex
閱讀關於諾言和異步調用... –
好吧,我將預覽內容移到IF之外 – 62009030