vasos tutorial google container dart

tutorial - ¿Cómo hacer referencia a otro archivo en Dart?



dart vs javascript (2)

En primer lugar, permítanme comenzar con esto diciendo que no utilice el símbolo de hash antes de importar o la biblioteca o cualquier otra cosa. Esta es una sintaxis antigua que se está depreciando. Así que ya no queremos usar #import(''...'') La sintaxis correcta es:

import ''some_file.dart'';

Dicho esto, hay dos cosas diferentes que podemos hacer para acceder a diferentes archivos de origen de dardos dentro de nuestro archivo actual. Lo primero es import el archivo. Usamos esto como en su caso cuando quiere traer una biblioteca diferente al archivo actual (o la biblioteca actual con mayor precisión).

Generalmente, si sus archivos están en el mismo directorio, o en un subdirectorio del actual, los importaríamos de la siguiente manera:

import ''lib/library.dart'';

Sin embargo, si está utilizando el diseño de paquete de pub, también puede usar algunas referencias de atajos especiales para importar archivos (especialmente de otros paquetes que haya importado). Recomiendo leer los documentos en el sitio del pub , ya que la mayoría de las aplicaciones y bibliotecas están diseñadas con esto en mente. También tiene sugerencias sobre las mejores convenciones de nomenclatura, como nombres de archivos en minúsculas, y el uso de guiones bajos para espacios y diseños de directorios.

La otra cosa importante que se debe saber acerca de traer un archivo de dardos a otro archivo, es que podemos usar la part y part of directivas. Esto solía llamarse #source pero se cambió (con la eliminación del signo de hash) para ayudar con cierta confusión. La directiva de part se utiliza cuando queremos escribir una sola biblioteca que abarque varios archivos. Digamos, por ejemplo, que tiene una Biblioteca impresionante , que está empezando a ser un poco grande para un solo archivo. Crearemos el archivo principal de la biblioteca (no debe confundirse con el método principal). Este archivo usualmente tendrá el mismo nombre que la propia biblioteca.

// awesome_library.dart library awesome_library; import ''dart:math''; import ''...''; // this injects all the content of secret_file.dart // into this file right here almost as if it was // here in the first place. part ''src/secret_file.dart''; // The rest of our file here // ...

La directiva de parte básicamente toma todo de nuestro src / secret_file.dart y lo inserta en esa parte del archivo. Esto nos permite dividir nuestra enorme Biblioteca impresionante en varios archivos más pequeños que son más fáciles de mantener. Aunque no se requiere específicamente, es útil usar la part of directiva en nuestro secret_file.dart para ayudar al editor a saber que es "parte de" la biblioteca.

// secret_file.dart part of awesome_library; // ... Rest of our secret_file code below.

Tenga en cuenta que al usar un archivo de pieza como este, la (s) parte (s) (que es todo lo que no es el archivo principal de la biblioteca) no pueden importar o usar las declaraciones de la biblioteca en sí mismas. Importan lo que se importa al archivo principal, pero no pueden agregar importaciones adicionales.

Para más información sobre la biblioteca vea este enlace.

Esto puede sonar como una pregunta estúpida, pero honestamente no tengo idea, sé que puedes usar la library , import e incluso #import , pero ¿cuál es la correcta?

Tengo dos archivos, MainClass.dart y MainClass.dart , y quiero agregar una referencia a MainClass.dart en MainClass.dart . ¿Cómo puedo hacer eso?


Importación de sus propias bibliotecas creadas: importará el filename.dart y no el nombre de su biblioteca. Entonces, si el nombre de su biblioteca es: myLib y está guardado en el archivo: someDartFile.dart tendrá que

import ''someDartFile.dart'';

Si tiene en Windows una biblioteca en: K: / SomeDir / someFile.dart, deberá escribir:

import ''/K:/SomeDir/someFile.dart'';

ejemplo:

import ''LibraryFile.dart''; //importing myLib void main(){ //a class from myLib in the LibraryFile.dart file var some = new SomeClassFromMyLibrary(); }

myLib en LibraryFile.dart:

library myLibrary; import ''dart:math''; class SomeClassFromMyLibrary{ String _str = "this is some private String only to myLibrary"; String pubStr = "created instances of this class can access"; }

Aquí un ejemplo completo.

//TestLib.dart import ''LibFile.dart''; //SomeLibrary void main() { print("Hello, World!"); LibFile l = new LibFile(); print(l.publicString);//public print(l.getPrivateString);//private print(l.getMagicNumber); //42 } //LibFile.dart library SomeLibrary; part ''LibFile2.dart''; class LibFile { String _privateString = "private"; String publicString = "public"; String get getPrivateString => _privateString; int get getMagicNumber => new LibFile2().number; } //LibFile2.dart part of SomeLibrary; class LibFile2 { int number = 42; }