2016-11-27 40 views
0

我正在用riot.js開發我的應用程序,我想使用dropzone(http://www.dropzonejs.com/)。如何在riot.js中使用路由器時使用庫?

在我的代碼:

的index.html下面,下面

<!doctype html> 
 
<html> 
 

 
<head> 
 
    <meta charset="utf-8"> 
 
</head> 
 

 
<body> 
 
    <app></app> 
 
    <script src="dist/scripts/bundle.js"></script> 
 
</body> 
 

 
</html>

app.tag,

var route = require('riot-route'); require("dropzone"); require('./main/home.tag'); require('./main/contents1.tag'); 
 

 
<app> 
 
    <main> 
 
    <contents></contents> 
 
    </main> 
 
    <script> 
 
    route(function(tagName) { 
 
     tagName = tagName || 'home' 
 
     riot.mount('contents', tagName) 
 
    }) 
 
    route.start(true) 
 
    </script> 
 
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/dropzone/4.3.0/min/dropzone.min.css" /> 
 
</app>

home.tag下面,

<home> 
 
    <div class="search-box"></div> 
 
</home>

然後,我添加<form action="/file-upload" class="dropzone" id="my-awesome-dropzone"></form>成這樣app.tag,它的作品的權利。

<contents></contents> 
 
<form action="/file-upload" class="dropzone" id="my-awesome-dropzone"></form>

但是,我將其添加到這樣home.tag,

<home> 
 
    <div class="search-box"></div> 
 
    <form action="/file-upload" class="dropzone" id="my-awesome-dropzone"></form> 
 
</home>

這是行不通的。誰能幫我??

回答

1

嘗試安裝標籤時,使用的(「安裝」更新懸浮窗,或者你也可以與(「更新」嘗試,

<home> 
    <div class="search-box"></div> 
    <form action="/file-upload" class="dropzone" id="my-awesome-dropzone"></form> 
    <script> 
    this.on('mount', function(){ 
     new Dropzone(".dropzone"); 
    }) 
    </script> 
</home> 
+0

非常感謝您的幫助!我不得不添加多一行'var Dropzone = require'('dropzone')''上面的''新的Dropzone(「。dropzone」);',但是它的確行得通了!謝謝! – Ryochan

+0

如果您對解決方案感到滿意,答案是正確的。 – vitomd