THẢO LUẬN

Avatar
đã bình luận câu trả lời trong câu hỏi
thg 5 14, 2018 4:08 SA

@tony yes, bạn truyền list data vào viewholder, có bn item thì add bấy nhiều view vào linear đó là đc

Note trước mỗi lần bind bạn phải removeAllView đi đã nhé, k lúc recycle nó bị lưu lại view của item trước đó

0
thg 5 14, 2018 4:06 SA

Hình như các trình duyệt mới bây giờ nó tự chặn rồi, không biết có đúng không 😦 Em thử test mà không chạy, có cách nào test được không nhỉ?

0
thg 5 14, 2018 4:04 SA

Hình lỗi rồi, bác up lại em xem với được không ạ?

0

Cảm ơn bạn nhiều 😃

Transaction được tạo mới nhưng để regist thành công được vào Blockchain thì phải có mã Hash đã chứ bạn. Khi tạo mới nó chỉ lưu tạm vào mảng GiaoDichTamHoan để chờ có máy đào Hash cho nó. Một node sẽ tự động lấy 1 số lượng tùy chọn các giao dịch để tính Hash. Nhưng BitCoin họ muốn giới hạn chính xác 10 phút 1 Block ra đời. Vì thế số lượng Tx ít hay nhiều sẽ được dùng để chia ra cho vào Block cho hợp lý. Cái này do thuật toán lựa chọn của BitCoin. Ở demo của mình k viết thuật toán này.

Ý mình transaction ở đây là 1 giao dịch mới ví dụ A chuyển tiền cho B, nó là 1 giao dịch, khi đó nó được lưu vào mảng GiaoDichTamHoan xong thì phải broadcast cái giao dịch đó đến các node khác, hay là máy của A hoặc B sẽ tự đào luôn? Nếu như vậy thì các thợ mỏ khác không thực hiện giao dịch chuyển tiền thì họ sẽ đào cái gì?

Cơ chế giải quyết conflict của các node như thế nào, khi có 2 nodes cùng tìm được 2 Hash khác nhau, cùng 1 thời điểm?

Ý mình là 2 máy cùng mạnh ngang nhau, thì khả năng đào ra được 1 hash giống nhau, hoặc 2 hash khác nhau trong cùng 1 miliseconds là hoàn toàn có thể, lúc đó thì hash của máy nào sẽ được chọn.

Cảm ơn bạn 😃

0
thg 5 14, 2018 2:58 SA

Mình ko làm thế. Mình chỉ muốn chắc chắn là ko thể nào force refresh new token thôi. hihi thank bạn

0
thg 5 14, 2018 2:46 SA

Bài viết hay và dễ hiểu. Cám ơn tác giả nhiều 👌

+1
Avatar
đã bình luận cho bài viết
thg 5 14, 2018 2:44 SA

khó hiểu thật 😦(

0
Avatar
đã bình luận cho bài viết
thg 5 14, 2018 1:40 SA

Hay quá em ơi

0
thg 5 14, 2018 1:02 SA

@minhtuancnttk39 Code js trên có dùng cú pháp ES6 Arrow function, bạn thử sửa lại thành như sau xem:

                    action: function (editor) {
		        // Open modal:
		        const modal = document.querySelector('#myModal');
		        modal.open();
		        modal.addEventListener('insert-image', (event) => {
		            url = event.getImageUrl();
		            editor.insertText("[Alt](${url})");
		        });
		    },

Sau khi sửa xong bạn test lại, chú ý F12 bật console lên xem có lỗi gì báo lên ko?

Ngoài ra, code mình viết ở câu trả lời câu hỏi lần trước của bạn là giã mã thôi. Nên mấy function event.getImageUrl(), editor.insertText chưa chắc đã tồn tại, tên các function với hàm ý chỉ các bước thực hiện xử lý trong action. Thành thật xin lỗi vì làm bạn ko hiểu.

event.getImageUrl => Bạn làm cách nào đó để lấy image url của item được click. Bạn có thể lưu url vào dataset của item.

<div class="image-item" data-image-url="http://localhost/image-url">
  <img src="http://localhost/image-url"/>
</div>

Rồi trong listener thì gọi:

// Lấy imageUrl qua event, thay thế cho event.getImageUrl():
const imageUrl = event.target.dataset.imageUrl

Cuối cùng, bạn sử dụng insert imageUrl vào editor thông qua biến editor. Bạn tìm hiểu xem làm sao để insert một đoạn text vào editor nhé.

0
thg 5 13, 2018 4:51 CH

def ._not_exists(scope) em đã băn khoăn định hỏi về cú pháp này trong ruby cho tới trước khi đọc đến cuối bài và mở link gốc xem -_-

0
thg 5 13, 2018 3:17 CH

bài viết rất hay ❤️

0
thg 5 13, 2018 12:58 CH
<script>
	$(document).ready(function() {
		$('.select2-multi').select2();
	});
	var simplemde = new SimpleMDE({
		placeholder: 'Type here...',
		promptURLs: true,
		toolbar: [
			{ name: "bold", action: SimpleMDE.toggleBold, className: "fa fa-bold", title: "Bold", },
			{ name: "italic", action: SimpleMDE.toggleItalic, className: "fa fa-italic", title: "Italic", },
			{ name: "strikethrough", action: SimpleMDE.toggleStrikethrough, className: "fa fa-strikethrough", title: "Strikethrough"},
			{ name: "heading-1", action: SimpleMDE.toggleHeading1, className: "fa fa-header fa-header-x fa-header-1", title: "Bold",},
			{ name: "heading-2", action: SimpleMDE.toggleHeading2, className: "fa fa-header fa-header-x fa-header-2", title: "Bold",},
			{ name: "heading-3", action: SimpleMDE.toggleHeading3, className: "fa fa-header fa-header-x fa-header-3", title: "Bold",},
			"|",
			{ name: "code", action: SimpleMDE.toggleCodeBlock, className: "fa fa-code", title: "Code",},
			{ name: "quote", action: SimpleMDE.toggleBlockquote, className: "fa fa-quote-left", title: "Quote",},
			{ name: "unordered-list", action: SimpleMDE.toggleUnorderedList, className: "fa fa-list-ul", title: "Generic List",},
			{ name: "ordered-list", action: SimpleMDE.toggleOrderedList, className: "fa fa-list-ol", title: "Numbered List",},
			{ name: "clean-block", action: SimpleMDE.cleanBlock, className: "fa fa-eraser fa-clean-block", title: "Clean block",},
			{ name: "horizontal-rule", action: SimpleMDE.drawHorizontalRule, className: "fa fa-minus", title: "Insert Horizontal Line",},
			{ name: "table", action: SimpleMDE.drawTable, className: "fa fa-table", title: "Insert Table",},
			{ name: "link", action: SimpleMDE.drawLink, className: "fa fa-link no-mobile", title: "Create Link",},
			"|",
			{ name: "preview", action: SimpleMDE.togglePreview, className: "fa fa-eye no-disable", title: "Toggle Preview",},
			{ name: "side-by-side", action: SimpleMDE.toggleSideBySide, className: "fa fa-columns no-disable no-mobile",
				title: "Toggle Side by Side",},
			{ name: "fullscreen", action: SimpleMDE.toggleFullScreen, className: "fa fa-arrows-alt no-disable no-mobile", title: "Toggle Fullscreen",},
			{
		    name: "image",
		    action: (editor) => {
		        // Open modal:
		        const modal = document.querySelector('#myModal');
		        modal.open();
		        modal.addEventListener('insert-image', (event) => {
		            url = event.getImageUrl();
		            editor.insertText("[Alt](${url})");
		        });
		    },
		    className: "fa fa-image",
                    title: "Upload Image",
		},
	    ]
	});
</script>

Đây là đoạn code để open modal lúc click vào image button nhưng không mở lên được ạ..

Anh có thể xem giúp e được kg ạ...

Dưới đây là code Modal của e ạ... E chỉ đang test thôi ạ

<div class="modal fade" id="myModal" role="dialog">
    <div class="modal-dialog">
			    
    <!-- Modal content-->
    <div class="modal-content">
	<div class="modal-header">
		<button type="button" class="close" data-dismiss="modal">&times;</button>
		<h4 class="modal-title">Modal Header</h4>
	</div>
	<div class="modal-body">
		<p>Some text in the modal.</p>
	 </div>
	<div class="modal-footer">
		<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
	</div>
</div>
			      
</div>
</div>

Em cám ơn a đã giúp ạ..

0
thg 5 13, 2018 7:58 SA

cám ơn bạn nhé

0

Haha. Đợt trước có nghiên cứu 1 chút về Blockchain mà về cái bị cty cho đi học Computer Vision mất rồi =)).

0

Hay và chi tiết quá 😄 cảm ơn em nhiều 😉

+1
thg 5 13, 2018 1:08 SA

Nếu bạn chưa biết gì về Recommender System thì mình nghĩ tốt hơn hết là thuê người khác làm. 😄 Nếu bạn muốn tìm hiểu thì có thể tìm từ khoá Recommender Systems, Recommendation Systems.

0
thg 5 12, 2018 3:22 CH

thanks anh a. bai viet rat hay

0
Viblo
Hãy đăng ký một tài khoản Viblo để nhận được nhiều bài viết thú vị hơn.
Đăng kí